2013-06-24 88 views
0

我正在使用meteor在DOM中插入任務(div)。有一個叫存儲在本地變量ocTasksLists「tasks_lists」在客戶端,以便調用在集合中插入新文檔不會出現在DOM中

var oTaskList = new TaskList(); 
ocTasksLists.insert(oTaskList); 

集合,應包括在這兩個DOM和服務器蒙戈數據庫的新task_list。

首先,它被包含在DOM中,並在幾毫秒之後,它從DOM中消失。我找不到問題的原因。該文檔被插入到服務器mognodb中,如果我刷新頁面(F5),那麼它確實出現在DOM中。服務器中的插入允許規則總是返回true。

更改或刪除tasks_lists時沒有任何問題。

謝謝

+1

什麼是TaskList?如果你想使用Meteor反應並且按照它的意圖,你可能應該使用Meteor.Collection而不是你自己的類。 –

+0

什麼是在你的JavaScript控制檯發生這種情況? – Akshat

+0

你使用一些隕石模型包嗎?否則,你正在按照Andrew Mao指出的那樣做錯誤的收藏創作。 –

回答

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條件塊內部的服務器上運行

更多關於流星允許http://docs.meteor.com/#allow

更多的代碼運行僅在服務器上http://docs.meteor.com/#meteor_isserver

相關問題