Я пытаюсь использовать тестовый пример, как описано в "mongoose-schema-extend"мангуст дискриминатор найти запрос
все работает так же, как объяснено там.
Но, я бы ожидал, что это даст мне возможность выполнить поисковый запрос по унаследованному типу. Таким образом, если мы рассмотрим пример показал в приведенной выше ссылке:
var VehicleSchema = mongoose.Schema({
make : String,
}, { collection : 'vehicles', discriminatorKey : '_type' });
var CarSchema = VehicleSchema.extend({
year : Number
});
var BusSchema = VehicleSchema.extend({
route : Number
})
var Vehicle = mongoose.model('vehicle', VehicleSchema),
Car = mongoose.model('car', CarSchema),
Bus = mongoose.model('bus', BusSchema);
var accord = new Car({
make : 'Honda',
year : 1999
});
var muni = new Bus({
make : 'Neoplan',
route : 33
});
Я ожидал бы Car.find({})
вернуть только те документы, которые имеют _type : Car
. Вместо этого я получаю все vehicles
.
Есть ли способ получить только cars
кроме как делать Car.find{"_type":"Car"})
?
Ключ дискриминатора - это функция, поддерживаемая Mongoose (еще не зарегистрированная вообще). Вопрос в том, есть ли встроенный способ выполнения запроса. Если нет, то я думаю, что владелец пакета не может нам помочь ... – skme
@skme Как вы в итоге решили это? –
Нет решения в поле зрения .. вы можете использовать то, что предложил @materik ... Отправленный вопрос в github, но до сих пор нет ответа – skme