我正在寻找一种方法来自定义内置用户模型的验证。
目标是允许用户使用相同的电子邮件注册帐户,但用户名不同。
我试图覆盖用户模型的设置方法,以防止验证电子邮件属性的唯一性,但不幸的是,这是不行的。至于挂钩,我找不到满足我需求的任何东西。
作为参考,验证发生在'loopback / common / models / user.js:556'中:
if (!(UserModel.settings.realmRequired || UserModel.settings.realmDelimiter)) {
UserModel.validatesUniquenessOf('email', {message: 'Email already exists'});
UserModel.validatesUniquenessOf('username', {message: 'User already exists'});
}
有什么方法可以用来禁用此电子邮件验证吗?
提前致谢。
答案 0 :(得分:3)
免责声明:我是LoopBack团队成员。
目前,无法允许非唯一的用户电子邮件。其中一个原因是User.login
同时支持email
和username
,即您可以通过输入电子邮件和密码进行登录。
原则上,可以更改LoopBack以支持您的用例,请打开GitHub问题以讨论可能的实现。