2014-09-17 2 views
2

Я новичок в Sails.js. Я пытаюсь получить данные из моей базы данных Монго Db «TestDB», у меня есть название коллекции «Компоненты», так что я создана модель по имени компонентов whcih содержит атрибуты моей выдержанныеИзвлечение данных из MongoDB в Sails.js

Components.js

module.exports = { 

attributes: { 
    TaskId: { 
     type: 'string', 
     required: true 
    }, 

    CompName: { 
     type: 'string' 
    }, 

    InitialAttr: { 
     type: 'string' 
    }, 

    Value: { 
     type: 'string' 
    } 
    } 
}; 

ComponentsController.js

module.exports = { 
    GetComponentList : function(req, res){ 
     Components.find({ CompName: 'ImageComponent'}).exec(function(err, data) { 
       if (err) return next(err); 
       res.json(data); 
      }); 
    } 
}; 

Маршрут:

'/comp' : { 
     controller: 'components', 
     action: 'GetComponentList' 
    } 

Этот запрос выполняет штраф в MongoVUE возвращения набора данных, но возвращает

[] 

в Sails.js

ответ

2

ватерлинии ORM ожидает, что все таблицы базы данных коллекции/быть строчными. Я предполагаю, если вы посмотрели в своей базе данных Mongo, вы увидите, что теперь есть две коллекции: Components и components. Если вам не нужны существующие данные в вашем db, вы можете просто удалить коллекцию Components. В противном случае вы можете указать свою модель в существующей коллекции, используя tableName property:

module.exports = { 

    tableName: 'Components', 

    attributes: { 
    TaskId: { 
     type: 'string', 
     required: true 
    }, 
    ...etc... 
    } 

} 
Смежные вопросы