2012-08-22 68 views
0

我剛開始研究使用流星即將發佈的項目,並有一個關於數據持久性的問題。這聽起來像你有兩個選擇:首先,你可以在實例化一個新的Collection時聲明一個「名字」,這個新的Collection將會創建一個數據庫集合,這個集合將在修改時被保存。避免在流星收集持久性

Chatrooms = new Meteor.Collection("chatrooms"); 

另一種選擇是創建一個匿名集合,它不會被保存。

Chatrooms = new Meteor.Collection(); 

但是我該怎麼做,如果我想從數據庫中填充一個集合,但不能在客戶端修改時保存它?例如,我可能想要創建一組用戶電影,這些電影將顯示在網格中 - 每個電影都根據應用於集合的排序和過濾進行自己的絕對定位。對集合進行更改後,相關的視圖(或模板)將被重新渲染以反映這些更改。但我不一定要把這些絕對位置存儲在數據庫中...

任何想法?

回答

0

我落得這樣做是這樣的:「)獲取(」

movies: function() { 
    var movies = Movies.find().fetch(); 
    _.each(movies, function(movie, index){ 
    movie.left = index * 2; 
    movie.top = index * 2; 
    }); 
    return movies; 
}, 

基本上,讓我來處理純JSON對象,使其更容易遍歷它們並改變它們而不執行「更新」命令。

1

我不是很清楚你的問題。但也許,你可以將絕對位置綁定到收集數據中?他們只是正常的JavaScript對象。收集數據只能通過insert/update/remove函數調用進行更改。

+0

謝謝 - 我最終做了這樣的事情,除了不在集合數據上,而是在從find查詢返回的遊標上。 – bento