Meteor发布当前用户的数据
Meteor publish data of current user
我只想发布登录用户创建的数据。我有以下publish
功能:
//server/collections/lists.js
Meteor.publish('lists', function(){
if(this.userId){
return listCollection.find({createdBy: this.userId});
} else {
this.ready();
}
});
但是,当我以登录用户的身份创建文档时,DOM上应该呈现模板的位置会随着我创建的文档"闪烁",但随后它就消失了。我做错了什么?
这是一种症状,即试图在客户端上插入,但没有插入的允许规则,然后插入被服务器拒绝。尝试在server
目录下添加类似的内容:
listCollection.allow({
insert: function (userId, doc) {
// the user must be logged in, and the document must be owned by the user
return (userId && doc.owner === userId);
}
});
请注意,您需要为您的特定用例自定义规则(例如,您可能没有owner
字段)。例如,您可以只使用return userId
来允许来自任何登录用户的插入。
或者,您不能设置allow
,而是使用一个方法来执行插入。一般来说,这是我的建议——请看我对这个问题的回答。
相关文章:
- React Native通过Navigator将用户输入数据传递到选项卡栏IOS中的组件
- 同源策略目的|用户数据与基本页面数据|客户端页面抓取
- 通过node.js和socket.io向特定用户发送数据
- 使用c#将用户数据设置为HTML标记
- Firebase-返回用户uid并将用户元数据值设置为不同的节点
- 尝试通过angularjs和node将用户数据发送到mongodb
- 将用户选择的数据临时存储在我的阵列中
- 用户输入MathQuill数据后,如何获取该数据
- 如何在同一页面上显示用户提交的数据
- Gmail 聊天如何在没有长轮询的情况下向用户发送数据
- 使用用户输入动态转换数据(Highcharts,JavaScript,Django)
- node-webkit:将数据导出到csv并提示用户保存文件
- ckeditor,并在用户键入时显示他们的数据
- Meteor(JavaScript应用程序平台)|向用户帐户添加数据
- 如何在asp.net中的用户定义的数据网格中使列可编辑
- AngularJs的Kendo UI:当用户在网格中选择行时,如何在文本框字段上绑定数据
- 使用new date()将数据与当前日期的MM/DD/YYYY格式的日期进行比较和筛选,同时从用户输入值中减去new d
- 如何使用JavaScript将用户生成的数据保存到Firebase中的用户
- Node.js:在用户连接之前向客户端发送数据
- 将用户输入的数据推送到JavaScript中的JSON中