0

パブリッシュ機能のコレクション アイテムにフィールドを追加し、このフィールドでアイテムをフィルター処理する必要がありminますmaxforEachカーソルを使用して解決策を見つけました:

Meteor.publish 'productsWithMinMax', (filter, options) ->
    Products.find(filter, options).forEach (p) =>
        p.min = Math.min p.price1, p.price2, p.price3, p.price4
        p.max = Math.max p.price1, p.price2, p.price3, p.price4

        if p.min && p.max && (p.max < p.mainPrice || p.min > p.mainPrice )
            @added "products", p._id, p

    Counts.publish @, 'numberOfProductsWithMinMax', Products.find(filter), {noReady: true}

    @ready()

しかしCounts.publish、カーソルのカウントが間違っています。この場合、カーソルを数える方法は?

4

1 に答える 1

0

私が見つけた唯一の解決策は、最大/最小プロパティをコレクション モデルに追加することです。

PS誰かがより良いものを提案してくれるといいですね。

于 2015-09-05T14:48:10.980 に答える