Поддерживает ли «отдельная» функция Mongoose Regex в запросе?

StackOverflow https://stackoverflow.com/questions/8315992

Вопрос

У меня есть следующий бит JS в проекте узла/монгуза. Я работаю над автозаполненной формой. Это отлично работает с обычной «находкой», но я хочу сделать «отличную» находку вместо этого.

Итак, вот где я нахожусь до сих пор. Проблема, которую, я считаю, заключается в том, как образуется запрос. Может ли кто -нибудь помочь с моим синтаксисом в отдельной линии? Или это просто то, что «различная» Mongoose не поддерживает регулярную экспозицию в дополнительном запросе?

var text.term = 'johnny';
var regex = new RegExp("^"+text.term);
// execute the search
Performance.collection.distinct({lc_actor: regex}, function(err, docs) {
    var names = [];
    for(var nam in docs) {
        // push the lc_actor to the array
    names.push(docs[nam].lc_actor);
    }
    // send back via callback function
    callback(null, names);
});

И вот что показывает моя супербозовая консоль (-vvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvvv

Tue Nov 29 13:34:30 [conn1] runQuery called mydb.$cmd { distinct: "performances", query: {}, key: { lc_actor: /^johnny/ } }
Tue Nov 29 13:34:30 [conn1] run command mydb.$cmd { distinct: "performances", query: {}, key: { lc_actor: /^johnny/ } }
Tue Nov 29 13:34:30 [conn1] command mydb.$cmd command: { distinct: "performances", query: {}, key: { lc_actor: /^johnny/ } } ntoreturn:1 reslen:140 526ms

Любые идеи?

Это было полезно?

Решение

Отвечая на мой собственный вопрос. У меня действительно были синтаксические ошибки в отличном методе Mongoose. Он принимает 3 параметра, у меня было только 2. Правильный синтаксис с помощью регулярного выражения (или любого условия):

Performance.collection.distinct('lc_actor', {lc_actor: regex}, function(err, docs) {

От mongoose docs для model.distinct ():

Model.distinct(field, conditions, callback);

http://mongoosejs.com/docs/finding-documents.html

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top