在此非常感谢您的帮助。现在已经将我的头撞在桌子上了几个小时。
我正在尝试创建一个简单的搜索功能来搜索用户名。我的目标是能够搜索用户名,并最终将所选的用户名添加到“团队”集合中。
我尝试过轻松搜索,但是没有运气。我正在尝试使用Accounts.FindUserByUsername,但我一直未定义。我已经安装了帐户密码,顺便说一句。
这是我的代码:
服务器端:
Meteor.methods({
findUser: function (username) {
const user = Accounts.findUserByUsername(username)
return user
}
})
客户端:
Template.search.helpers(function() {
Meteor.call('findUser', 'username', findUserCallback)
})
function findUserCallback(error, username) {
console.log(username)
}
Template.search.events({
'submit .search'(event) {
event.preventDefault()
Meteor.call('findUser', 'username', findUserCallback)
}
})
我知道我做错了什么,但我不知道该怎么办。我在网上找不到太多帮助。
非常感谢–非常感谢!
答案 0 :(得分:0)
欢迎堆栈溢出朱莉娅。
Meteor用户集合很特殊,因为它用于身份验证,并且由于安全风险,建议不要在UI中访问其他用户。
通常会有另一个名为“玩家”或“成员”的收藏集-这样做的好处是您可以存储其他信息,并且可以轻松发布/订阅这些收藏集并进行操作,而无需编写流星方法可以完成您的工作。
在新集合中,您可以存储用户的_id,因此,如果需要,您可以始终引用用户记录(即用户名)。