Node.js 在strongloop上创建新用户而不输入电子邮件
我们的登录模型只需要用户输入用户名和密码,电子邮件是可选的,但是环回用户模型需要在创建新用户之前发送电子邮件Node.js 在strongloop上创建新用户而不输入电子邮件,node.js,login,loopbackjs,strongloop,Node.js,Login,Loopbackjs,Strongloop,我们的登录模型只需要用户输入用户名和密码,电子邮件是可选的,但是环回用户模型需要在创建新用户之前发送电子邮件 有没有一种方法可以在Strongloop中创建新用户而不必输入电子邮件 根据以下文件,目前没有办法改变内置模型所需的属性: 根据以下文件,目前没有办法更改内置模型的所需属性: 目前,不可能允许非唯一用户电子邮件。一个 原因之一是User.login同时支持电子邮件和用户名, i、 e.您可以通过输入电子邮件和密码登录 请看 但别担心,有一种丑陋的(或者可能是创造性的)方法可以解决这个问
有没有一种方法可以在Strongloop中创建新用户而不必输入电子邮件 根据以下文件,目前没有办法改变内置模型所需的属性:
根据以下文件,目前没有办法更改内置模型的所需属性: 目前,不可能允许非唯一用户电子邮件。一个 原因之一是User.login同时支持电子邮件和用户名, i、 e.您可以通过输入电子邮件和密码登录 请看 但别担心,有一种丑陋的(或者可能是创造性的)方法可以解决这个问题: 1.从
common/models/base User.json中的用户模型扩展:
{
"name": "baseUser",
"base": "User",
"idInjection": true,
"hidden":["email"],
"properties": {
"username": {
"type": "string",
"required": true,
"index": {
"unique": true
}
}
}
}
2.在登录common/models/base user.js
之前,为每个用户创建随机电子邮件:
module.exports = function (BaseUser) {
BaseUser.beforeRemote('create', function (context, user, next) {
var req = context.req;
req.body.email =Date.now()+"a@b.cc";
next();
});
};
3.在server/config model.json
"baseUser": {
"dataSource": "MongoDB",
"public": true
},
"User": {
"dataSource": "MongoDB",
"public": false
}
目前,不可能允许非唯一用户电子邮件。一个
原因之一是User.login同时支持电子邮件和用户名,
i、 e.您可以通过输入电子邮件和密码登录
请看
但别担心,有一种丑陋的(或者可能是创造性的)方法可以解决这个问题:
1.从common/models/base User.json中的用户模型扩展:
{
"name": "baseUser",
"base": "User",
"idInjection": true,
"hidden":["email"],
"properties": {
"username": {
"type": "string",
"required": true,
"index": {
"unique": true
}
}
}
}
2.在登录common/models/base user.js
之前,为每个用户创建随机电子邮件:
module.exports = function (BaseUser) {
BaseUser.beforeRemote('create', function (context, user, next) {
var req = context.req;
req.body.email =Date.now()+"a@b.cc";
next();
});
};
3.在server/config model.json
"baseUser": {
"dataSource": "MongoDB",
"public": true
},
"User": {
"dataSource": "MongoDB",
"public": false
}
,但由于API随着时间的推移发生了变化,该答案的代码今天已被最新的环回(^3.17或^4)弃用
:BaseUser.beforeRemote('create'),…
以下是更新后的基本用户,假设环回3,基于以下更完整的实现:
,但由于API随着时间的推移发生了变化,该答案的代码今天已被最新的环回(^3.17或^4)弃用
:BaseUser.beforeRemote('create'),…
以下是更新后的基本用户,假设环回3,基于以下更完整的实现:
看这个看这个给我看,这只能称为创造性:)。OP说电子邮件是可选的,所以它只缺少一个额外的字段,对于那些实际为我提供电子邮件地址的人来说,这只能称为创造性:)。OP表示,电子邮件是可选的,所以对于那些为更新提供电子邮件地址的人来说,它只缺少一个额外的字段