Meteor:两种类型的用户,如何处理复杂的 UserAccounts?

Meteor: Two types of user, the way to go with complexe UserAccounts?

我正在使用 Meteor/react 和 flowRouter,我想创建一个有两种用户的应用程序;让我们说保持简单:


那么你们中的一些人是使用包 UserAccounts 来执行此操作还是您自己创建了一个系统? 当然,我希望使用电子邮件验证等...应用程序 Ui 希望有一个搜索组件搜索提供者并且只在提供者中搜索。

此外,我将使用两个注册表单(同一页面,但有两个表单),但两种类型都使用一个登录模式。

我的问题是,使用 userAccount 是一件好事吗,我可能需要两个角色的角色,但是 UserAccount 是否接受许多其他自定义字段,我是否必须在 'Profile' 中设置只有一个用户集合的应用程序不会太慢吗?

感谢大家的帮助:)

是的,您可以为您的案例使用 userAccount,不,它不会减慢到任何明显的速度。

要管理不同的角色,您可以使用 alaning:roles 包。它可以帮助您将对代码的某些部分的访问限制为角色和组。

更新:(编辑)

正如评论中指出的那样,不建议使用配置文件,因为它会自动发布。而是试试这个: 关于在用户帐户中添加更多字段的第二部分,您可以在配置文件部分添加任意数量的字段。该文档将如下所示:

{


  _id: "bbca5d6a-2156-41c4-89da-0329e8c99a4f",  // Meteor.userId()
  username: "cool_kid_13", // unique name
  emails: [
    // each email address can only belong to one user.
    { address: "cool@example.com", verified: true },
    { address: "another@different.com", verified: false }
  ],
  createdAt: Wed Aug 21 2013 15:16:52 GMT-0700 (PDT),
  profile: {
        //profile data
       },
passportNo:'PASSPORT',
ssn:'SSSN',
oneMoreField: 'OneMoreField',
}

默认情况下,此处只会发布电子邮件、用户名和个人资料,除非发布和订阅,否则客户不会看到您的其他数据。

您可以阅读有关帐户的更多信息here