如何将自定义用户数据添加到流星帐户
How to add custom user data to meteor accounts
我试图建立一个系统,使默认帐户系统内置到MeteorJS将有一个朋友列表。不幸的是,这行不通,我不知道为什么。我目前正在尝试简单地向用户添加一个friendList数组。配置文件,然后简单地将添加的用户追加到该列表的末尾。代码如下:服务器:
Meteor.methods({
addFriend: function(friendUsername){
friendUserId = Meteor.users.findOne({username:friendUsername});
if(friendUserId){
Meteor.users.update({_id:Meteor.userId()}, {$set:{"profile.friendList":Meteor.user().profile['friendList'].push(friendUserId)}});
return 1;
}
else return 0;
}
});
客户:Template.addFriendPage.events({
"keypress .addFriendByUsername": function(event, template){
if(event.which == 13){
event.preventDefault();
var user = Meteor.userId();
var friendUsername = template.find(".addFriendByUsername").value;
console.log(friendUsername);
console.log(user);
console.log(Meteor.call("addFriend",friendUsername));
if(Meteor.call("addFriend", friendUsername)){
alert("successfully added friend!");
template.find(".addFriendByUsername").value = "";
} else alert("not a valid username");
}
}
});
html只是一个模板,我可以把用户名。我知道我必须添加将当前用户添加到其他用户的好友列表的部分,但我想先让这个工作
你的主要问题是你正在设置推送。相反,您需要使用$push
。
var userId = Meteor.user();
Meteor.users.update(userId, {$push:'profile.friendList':friendUserId});
第二,我认为在用户档案中存储好友是个不太好的主意。考虑创建一个好友集合。
相关文章:
- 流星 - 添加带有熨斗的路由后无法提交用户.路由器到登录和注册表单
- 流星:在创建帐户上添加字段
- 将disqus添加到流星.js项目中
- 如何在流星js中为对象添加方法
- 将js文件添加到流星项目中
- 流星:显示数组数据,因为表在添加新列时给出了重复值
- 在流星中添加和使用聚合物
- 我可以为单个平台添加流星包吗?
- 流星 - 将投票添加到集合中的特定 ID
- 流星.js添加有关用户帐户注册的更多信息
- 如何在流星应用程序中向 mongodb 添加两列唯一 id
- 如何将谷歌分析添加到流星应用程序
- 如何在流星待办事项应用程序示例中添加搜索
- 在流星中向用户集合添加字段的正确方式
- 将流星调用的结果反应性地添加到当前数据上下文中
- 流星:使用模板通过事件添加一些HTML
- 流星助手添加适当的css一秒钟,然后消失
- 铁:路由器+流星-不能同时添加POST数据到数据库和渲染路由
- 在我的流星应用程序上添加谷歌地图
- 不能添加流星包