Meteor Mongo 数据库设计用户帐户
Meteor Mongo database design user accounts
我正在使用 Meteor 构建一个网络应用程序,我正在使用 Meteor Accounts-password 包和 accounts-facebook 包来简化登录。用户有一些与他们相关的信息,例如电子邮件和密码,但我想在创建帐户后将更多信息与他们相关联。
我知道有两种方法可以做到这一点,我想知道我应该怎么做,因为我似乎无法在互联网上找到任何关于它的信息。
选项 1:
我在 Meteor.user.profile 对象中添加了所有附加信息(如用户名、显示名称和其他内容)。这似乎是一个糟糕的解决方案,因为默认情况下用户可以访问配置文件对象中的所有内容,而我必须手动拒绝他们访问。
选项 2:
我创建了一个新集合 Profile-information,并存储有关用户的所有其他数据,然后通过一些共享密钥将其绑定到 meteor.user 对象。这似乎也是一个糟糕的解决方案,因为我必须像 SQL 中那样拆分我的数据,并且没有 mongodb.
中嵌入文档的所有优点
到目前为止,这是我的思考过程,我不知道如何继续。
哪个选项似乎是最好的方法,或者是否有选项 3 效果更好?
提前致谢。
感谢@forallepsilon,我发现您可以将任何数据写入您想要的用户对象。我之前虽然用户对象被锁定,你只能在配置文件字段中存储额外的数据。
我将通过创建附加字段将我拥有的关于用户的附加数据存储在 Meteor.user 对象中。
我正在使用 Meteor 构建一个网络应用程序,我正在使用 Meteor Accounts-password 包和 accounts-facebook 包来简化登录。用户有一些与他们相关的信息,例如电子邮件和密码,但我想在创建帐户后将更多信息与他们相关联。
我知道有两种方法可以做到这一点,我想知道我应该怎么做,因为我似乎无法在互联网上找到任何关于它的信息。
选项 1:
我在 Meteor.user.profile 对象中添加了所有附加信息(如用户名、显示名称和其他内容)。这似乎是一个糟糕的解决方案,因为默认情况下用户可以访问配置文件对象中的所有内容,而我必须手动拒绝他们访问。
选项 2:
我创建了一个新集合 Profile-information,并存储有关用户的所有其他数据,然后通过一些共享密钥将其绑定到 meteor.user 对象。这似乎也是一个糟糕的解决方案,因为我必须像 SQL 中那样拆分我的数据,并且没有 mongodb.
中嵌入文档的所有优点到目前为止,这是我的思考过程,我不知道如何继续。 哪个选项似乎是最好的方法,或者是否有选项 3 效果更好?
提前致谢。
感谢@forallepsilon,我发现您可以将任何数据写入您想要的用户对象。我之前虽然用户对象被锁定,你只能在配置文件字段中存储额外的数据。
我将通过创建附加字段将我拥有的关于用户的附加数据存储在 Meteor.user 对象中。