标准适用于嵌入式阵列的文档数量出错

时间:2014-10-12 11:42:42

标签: mongodb meteor

我有一个名为Assignments的mongoDB集合,它有多个出价(嵌入式数组)。当其中一个出价设置为已接受时:true,它们被视为accepted_bid。

我想要一个函数,它返回由登录用户拥有的许多(嵌入式数组)中的一个出价的所有文档(或文档数)。

以下不起作用。我希望在HTML文件中包含{{stats.count}}。

Template.dashboard.stats = function() {
        return Assignments.find({completed:true}, {
            transform: function(doc) {
                if(doc.bids) {
                var accepted_bid = _(doc.bids).findWhere({owner:Meteor.userId(),accepted:true});
                doc.bid = accepted_bid;
            }
            return doc;
        }
        });
}; 

1 个答案:

答案 0 :(得分:1)

我不确定这是否有效,但会返回一个计数:

Template.dashboard.helpers({
    stats: function() {
    var assignments = Assignments.find({
        completed: true
    }, {
        transform: function(doc) {
            if (doc.bids) {
                var accepted_bid = _(doc.bids).findWhere({
                    owner: Meteor.userId(),
                    accepted: true
                });
                if(accepted_bid) doc.bid = accepted_bid;
            }
            return doc;
        }
    }).fetch();

    return _(assignments).chain().pluck("bid").compact().value().length;
    }
});

它可以与{{stats}}

一起使用