2

2 つの条件の両方を満たすモデルの個別のフィールドのリストを探しています。

ドキュメントから: http://mongoosejs.com/docs/api.html#model_Model.distinct

の 2 番目のパラメーターとして条件の配列を渡すことができることがわかりましたModel.distinct()。しかし、条件の配列は「または」操作を介してリンクされているようです。つまり、いずれか 1 つの条件がフィールドを満たす場合にリストされます。

しかし、両方の条件が満たされた場合にのみフィールドを取得したいと考えています。

そして私が使用するとき:

Model.distinct(field).and(arrayOfConditions).exec(callback);

次に、エラーが発生します:

TypeError: Cannot call method 'map' of undefined
    at SchemaBoolean.handleArray (/Users/user1/node_modules/mongoose/lib/schema/boolean.js:56:14)
4

1 に答える 1

2

distinct完全に機能するQueryオブジェクトを返さないため、代わりに次のようにします。

Model.distinct(field, {$and: arrayOfConditions}).exec(callback);
于 2013-10-07T14:32:01.667 に答える