MongoDB, Mongoose и Node.js.Зачем объявлять модель? - PullRequest
5 голосов
/ 19 апреля 2011

Я новичок в документно-ориентированных базах данных.Мой вопрос: почему я должен объявлять модель в MongoDB каждый раз, когда запускается мое приложение?Например:

mongoose.model('User', {
  collection: 'user',
  properties: [
    'created',
    'username',
    'password',
    'email'
  ]}  //Edited: '}' was missing in original post
);

Я хочу построить все таблицы ОДНАЖДЫ, а в моем приложении только канал или запрос данных.Я думал, что вся архитектура данных должна быть установлена ​​через CLI или специального администратора (скажем, PhpMyAdmin для mySql).

Оказывается, что в начале моего приложения каждый раз я объявляю модель данных.Не имеет смысла для меня.Помощь:)

1 Ответ

8 голосов
/ 19 апреля 2011

Вам необходимо объявить модель, потому что, по сути, сама MongoDB хранит только коллекции и не привязывается к схеме / модели. Mongoose предоставляет метод для определения модели, но есть драйверы, которые на самом деле даже не предоставляют (см. Candy для Ruby). В этом весь смысл наличия ориентированной на документы базы данных. В действительности вы не привязаны к схеме и вносите изменения в структуру данных вашей базы данных на лету в соответствии с требованием.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...