Javascript 当用户注册时,使用Meteor创建Mongo集合

Javascript 当用户注册时,使用Meteor创建Mongo集合,javascript,mongodb,meteor,Javascript,Mongodb,Meteor,我正在开发一个Meteor应用程序,允许音乐场所的工作人员说出他们是否可以在一个月内每班工作。我所要做的就是在用户注册时为其创建Mongo集合,这样原始数据永远不会更改,只显示与该用户相关的文档。我曾考虑过只使用一个集合,其中每个文档都有所有者ID,但这会导致原始数据和用户重复数据同时显示,或者没有数据显示,因为在首次注册时,没有文档会有其用户ID 当用户注册时,是否有方法在客户端和服务器上创建集合?还有,有没有更好的方法 非常感谢您的帮助或建议。当您说“没有数据显示,因为没有文档在首次注册时会

我正在开发一个Meteor应用程序,允许音乐场所的工作人员说出他们是否可以在一个月内每班工作。我所要做的就是在用户注册时为其创建Mongo集合,这样原始数据永远不会更改,只显示与该用户相关的文档。我曾考虑过只使用一个集合,其中每个文档都有所有者ID,但这会导致原始数据和用户重复数据同时显示,或者没有数据显示,因为在首次注册时,没有文档会有其用户ID

当用户注册时,是否有方法在客户端和服务器上创建集合?还有,有没有更好的方法


非常感谢您的帮助或建议。

当您说“没有数据显示,因为没有文档在首次注册时会有其用户ID”时,您是什么意思?如果用户刚刚注册了该服务,但还不能提供任何信息,这不是很正常吗?当他们第一次注册时,我需要有一个包含所有可用班次的表。我可以从“shows”集合中获取此信息,但我不希望编辑原始数据,因为它需要为以后注册的任何其他用户保留。本质上,当用户注册时,我需要复制原始数据,这需要成为该用户的默认数据。但是,您不想让给定用户的数据集在其他用户轮班时发生变化吗?你必须反应性地维护所有这些副本。。。我认为您应该创建一个具有所有权字段的集合,如您所说,并根据
doc&&doc.ownerId===userId
授予
update
insert
允许权限。如何将原始数据复制到同一集合中,然后添加所有者ID?复制数据会生成新的对象ID还是会复制它?如果使用单个集合,则无需复制原始数据:原始数据已经存在。如果我理解正确,您只需要确保用户不能修改、创建或删除未通过
ownerId
链接到他的数据。为此,您可以使用
yourCollection.allow()
方法