【发布时间】:2012-04-27 09:33:08
【问题描述】:
我正在尝试在流星应用程序中的基础 mongodb 上创建一个两列唯一索引并且遇到了问题。我在流星文档中找不到任何内容。我已经从 chrome 控制台尝试过。我从 term 开始尝试过,甚至试图将 mongod 指向 .meteor 内的 /db/ 目录。我试过了
Collection.ensureIndex({first_id: 1, another_id: 1}, {unique: true}); 变体。
我希望能够防止流星应用程序 mongo 集合中出现重复条目。
想知道是否有人发现了这一点?
我回答了我自己的问题,真是个菜鸟。
我想通了。
启动流星服务器
打开第二个终端并输入
meteor mongo
然后创建您的索引...例如,我为 thumbsup 和 thumbsdown 类型系统的记录做了这些。
db.thumbsup.ensureIndex({item_id: 1, user_id: 1}, {unique: true})
db.thumbsdown.ensureIndex({item_id: 1, user_id: 1}, {unique: true})
现在,只需要找出一个引导安装设置,它会在推送到 prod 时而不是手动创建这些设置。
【问题讨论】:
-
我在看到您的编辑之前发布了我的答案,但请注意,仅在服务器端启用索引,您的用户会认为他们给出了多个支持,即使这些支持实际上并没有被保存。因此,作为一种解决方法,最好在插入之前进行查询。
-
如果您将自己的答案与问题分开发布会更好。更清晰。
标签: javascript mongodb meteor