【问题标题】:Add custom user fields to Meteor.js将自定义用户字段添加到 Meteor.js
【发布时间】:2015-01-04 07:46:01
【问题描述】:

我是编程和 Meteor.js 的新手。我正在尝试构建一个问题应用程序,管理员可以在其中发布问题,然后在一段时间后将它们标记为真或假。当用户单击“是”或“否”时,应用程序会将其用户 ID 添加到 usersTrueusersTrue 数组中。还将问题_id 添加到用户个人资料中,以便它可以检查用户是否已经回答了问题。最后,当管理员单击“真”或“假”时,它会循环遍历正确回答的用户列表,并将其rightCount 增加 1,或者如果他们回答不正确,则将其wrongCount 增加 1。

我已经弄清楚如何将用户的 ID 插入到正确的问题数组中。

我的问题是如何在创建帐户时向用户添加自定义字段,以便我可以检查用户是否已经回答了问题。

我尝试使用 onCreateUser 创建 /server/user.js

Accounts.onCreateUser(function(options, user){
profile = _.insert({
    questionsAnswered: [],
    rightCount: 0,
    wrongCount: 0
});

user.profile = profile

return user;

如果我做的完全错误,或者有更有效的方法来完成整个过程,我会很想听听。

【问题讨论】:

    标签: javascript mongodb meteor meteor-accounts


    【解决方案1】:

    我遇到了类似的问题。你可以试试这个:

    Accounts.onCreateUser(function(options, user){
      profile = {
          questionsAnswered: [],
          rightCount: 0,
          wrongCount: 0
      };
    
      user.profile = profile
    
      return user;
    });
    

    【讨论】:

    • 确保为用户集合设置允许/拒绝规则,因为在流星中,用户文档的配置文件密钥可供用户免费使用以进行更新。所以基本上,如果你不限制它,用户可以随意更改 rightCount。
    • 感谢您的回复。看来我试图使它过于复杂。完成应用程序以供公众使用后,我将更改允许/拒绝规则。再次感谢。
    猜你喜欢
    • 2018-08-11
    • 2022-01-03
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-25
    • 1970-01-01
    相关资源
    最近更新 更多