如何将以下代码添加到accounts-ui包中,以便在创建用户时创建配置文件?
if (options.profile)
{
user.profile = options.profile;
}
如果无法更改accounts-ui表单,是否可以在创建帐户时向配置文件添加空对象?
或许这样的事情:
user.profile = {};
我在"包"中寻找这个包。目录但没有找到它,为什么不存在?我认为这段代码很容易用于任何必要的修改。
对此的任何建议都会很棒。
提前致谢:)
答案 0 :(得分:4)
无需向任何包添加任何内容。每当创建用户时,都会运行Accounts包中的一个钩子。 Accounts.onCreateUser
您可以使用它来填写用户文档的默认值。您将用户对象返回到要保存的状态。
应该在服务器上运行。例如,创建文件 server / usersetup.js 并添加以下代码。
Accounts.onCreateUser(function(options, user) {
if (! options.profile) options.profile = {};
options.profile.artist = true;
options.profile.reputation = 100;
options.profile.someObject = {a: [], b: {}};
user.profile = options.profile;
return user;
});