Mongodb 如何在Mongo Collection中推送特定用户?

Mongodb 如何在Mongo Collection中推送特定用户?,mongodb,meteor,Mongodb,Meteor,我正在开发Meteor中的一个应用程序,我们称之为Meetup。我已经完成了基本的crud,现在当用户发送会议邀请请求时,我被请求操作绊住了(我使用accounts passwordpackage来处理auth,如果它有什么意义的话)。我想向meetup的所有者展示哪些用户希望访问此meetup,所以我就是这样设计的: 我在我的模板中创建了一个“加入”按钮,当我在我的控制器中创建这样的事件时,它可以完美地工作: 'click .join': function(event) { var p

我正在开发Meteor中的一个应用程序,我们称之为Meetup。我已经完成了基本的crud,现在当用户发送会议邀请请求时,我被请求操作绊住了(我使用
accounts password
package来处理auth,如果它有什么意义的话)。我想向meetup的所有者展示哪些用户希望访问此meetup,所以我就是这样设计的: 我在我的模板中创建了一个“加入”按钮,当我在我的控制器中创建这样的事件时,它可以完美地工作:

'click .join': function(event) {
    var params = {
      user: Meteor.userId(),
      username: Meteor.user().username
    }
    toastr.success('You've send a request');
    Router.go('/meetups');
}
<p>{{username}} sent a request to join your meetup</p> <button class="btn-primary btn-xs yes">Ok</button> <button class="btn-danger btn-xs no">No</button>
'click .join': function(event) {
        var params = {
          user: Meteor.userId(),
          username: Meteor.user().username
        }
    Meteor.call('join', params);
    toastr.success('Ok');
    Router.go('/meetups');
}
由于我处理此事件获取用户的参数,因此很容易显示其用户名,我的操作如下:

'click .join': function(event) {
    var params = {
      user: Meteor.userId(),
      username: Meteor.user().username
    }
    toastr.success('You've send a request');
    Router.go('/meetups');
}
<p>{{username}} sent a request to join your meetup</p> <button class="btn-primary btn-xs yes">Ok</button> <button class="btn-danger btn-xs no">No</button>
'click .join': function(event) {
        var params = {
          user: Meteor.userId(),
          username: Meteor.user().username
        }
    Meteor.call('join', params);
    toastr.success('Ok');
    Router.go('/meetups');
}
如果我使用
call
函数,我有一个方法来处理它:

Meteor.methods({
    'join': function (params) {
        Guests.insert(params);
    }
});
我还创建了名为
guests
的模板:

<template name="guests">
  {{#each guests}}
    <p>{{username}} sent a request to join your meetup</p> <button class="btn-primary btn-xs yes">Ok</button> <button class="btn-danger btn-xs no">No</button>
  {{/each}}
</template>

{{{每位客人}
{{username}}发送了加入您的会议的请求

确定否 {{/每个}}
并像这样将其包含在我的meetups模板中:
{{{>guests}
。 你可以理解,因为我看不到用户名。我通过
guests
collection使用了一个迭代,并尝试获取
username
,因为它在定义一个单独的集合时工作得很好。
所以我的问题是,我怎么才能推送特定的用户(在我的例子中是那些点击了
join
按钮的用户)并显示他们的用户名呢?任何帮助都将不胜感激。

此外,您还需要确保您的“加入”方法正确且有效。使用控制台(meteor mongo->db.guests.find().fetch())并进行检查。感谢回复!我的代码
var-params={user:Meteor.userId(),username:Meteor.user().username}
的主要问题是没有一个特殊的助手来获取所有来宾-您正在调用2个函数,而只能调用它一次:
var-user=Meteor.user();var params={user:user.\u id,username:user.username}
<template name="guests">
  {{#each guests}}
    <p>{{username}} sent a request to join your meetup</p> <button class="btn-primary btn-xs yes">Ok</button> <button class="btn-danger btn-xs no">No</button>
  {{/each}}
</template>