1

我正在考虑在 Meteor 中构建我的下一个应用程序。除其他外,我的数据模型将包含要传递给客户端的对象,但其内容需要在推送之前动态过滤。

例子:

var obj = {
    name: "John",
    secret: "A very shy guy"
}

我希望能够secret为“管理员”用户访问服务器和客户端上的属性,但其他用户不应该在他们的客户端上看到。

实现这一点的最佳方法/框架是什么?

4

1 回答 1

4

将流星发布功能与您的收藏一起使用,您可以使用排除或包含:

服务器端 JS排除:

Meteor.publish("mycollection", function () {
    return mycollection.find({}, {fields: {secretInfo: 0}});
});

服务器端 JS包含:

Meteor.publish("mycollection", function () {
    return mycollection.find({}, {fields: {name: 1}});
});

然后在您的客户端上订阅此发布:

客户端js

Meteor.subscribe("mycollection");

有关流星文档中发布功能的更多信息:http: //docs.meteor.com/#meteor_publish

还可以查看当事方示例(带截屏视频): http: //meteor.com/examples/parties

于 2013-04-03T13:41:41.553 回答