我刚刚开始考虑在即将到来的项目中使用Meteor,并且有一个关于数据持久性的问题。听起来你有两个选择:首先,你可以在实例化一个新的Collection时声明一个"name“,这将创建一个数据库集合,它将在修改时被保存。
Chatrooms = new Meteor.Collection("chatrooms");另一种选择是创建一个匿名集合,该集合不会被保存。
Chatrooms = new Meteor.Collection();但是,如果我想从数据库中填充一个Collection,而不是在客户端进行更改时保存它,该怎么办?例如,我可能想要创建一个将在网格中显示的用户电影集合--根据应用于该集合的排序和过滤,每个电影都有其自己的绝对位置。在对集合进行更改时,将重新呈现关联的视图(或模板)以反映这些更改。但我不一定希望将这些绝对位置存储在数据库中……
有什么想法吗?
发布于 2012-08-23 12:57:22
我最终做了这样的事情:
movies: function() {
var movies = Movies.find().fetch();
_.each(movies, function(movie, index){
movie.left = index * 2;
movie.top = index * 2;
});
return movies;
},基本上,'fetch()‘允许我处理纯JSON对象,这使得在不执行'update’命令的情况下迭代和修改它们变得更容易。
发布于 2012-08-23 11:26:23
我对你的问题不是很清楚。但是,您是否可以将绝对位置绑定到集合数据中?它们只是普通的javascript对象。并且采集数据只会通过insert/update/remove函数调用来更改。
https://stackoverflow.com/questions/12079400
复制相似问题