我正在使用meteor在DOM中插入任务(div)。有一个名为“tasks_lists”的集合存储在本地var ocTasksLists中,因此调用
var oTaskList = new TaskList();
ocTasksLists.insert(oTaskList);
客户端中的应该在DOM和服务器mongo数据库中包含新的task_list。
首先,它包含在DOM中,几毫秒后,它从DOM中消失。我找不到问题的原因。该文档插入服务器mognodb中,如果我刷新页面(F5),它确实出现在DOM中。服务器中的insert allow规则总是返回true。
更改或删除tasks_lists时没有任何问题。
谢谢
答案 0 :(得分:0)
您必须在服务器上添加Collection.allow规则,发生的事情很可能是您删除了不安全的包,因此需要为每个数据库操作明确规则,即插入,更新,删除。
oTaskList = new Meteor.Collection("tasklist");
oTaskList.allow({
insert: function (userId, doc) {
return userId === doc.user_id;
},
update: function (userId, doc) {
console.log(EJSON.stringify(doc));
return userId === doc.user_id;
}
});
此代码应仅在服务器上运行,或者将其放在应用程序的/server
目录中或Meteor.isServer
条件块内
关于meteor的更多信息允许http://docs.meteor.com/#allow
有关仅在服务器上运行的代码http://docs.meteor.com/#meteor_isserver
的详情