在 meteor 中沙盒 collections 的最佳方法是什么?
What is the best way to sandbox collections in meteor?
我想将每个用户的数据与所有其他用户隔离开来。让用户只查看和修改她的东西的最佳方法是什么?我的方法是
- 在 每个 collection
上添加一个 userId 字段
- 配置每个已发布的 collection 以根据 userId 进行过滤。
- 将 simple-schema 与 collections2 结合使用,并在每个模式的 userId 字段上添加
autoValue: function(d) { return this.userId }
以在验证期间强制使用 userId。
这是一个好的和正确的方法吗?最佳做法是什么?
@dk。这对我来说听起来是个好方法,也被认为是最佳实践(根据我使用流星的经验)。
听起来不错。实际上,我在一个相当大的项目中使用了这种方法。
我还通过 reywood:publish-composite 包使用复合集合。
因此,某些集合没有 userId 键,但当前用户的文档是根据相关集合中的文档选择的。我也在处理用户之间共享许多文档的情况。
这提供了一定程度的规范化,同时工作得非常好。
我想将每个用户的数据与所有其他用户隔离开来。让用户只查看和修改她的东西的最佳方法是什么?我的方法是
- 在 每个 collection 上添加一个 userId 字段
- 配置每个已发布的 collection 以根据 userId 进行过滤。
- 将 simple-schema 与 collections2 结合使用,并在每个模式的 userId 字段上添加
autoValue: function(d) { return this.userId }
以在验证期间强制使用 userId。
这是一个好的和正确的方法吗?最佳做法是什么?
@dk。这对我来说听起来是个好方法,也被认为是最佳实践(根据我使用流星的经验)。
听起来不错。实际上,我在一个相当大的项目中使用了这种方法。
我还通过 reywood:publish-composite 包使用复合集合。
因此,某些集合没有 userId 键,但当前用户的文档是根据相关集合中的文档选择的。我也在处理用户之间共享许多文档的情况。
这提供了一定程度的规范化,同时工作得非常好。