Model是类,对应集合(collection)
Model类的实例对应文档(document)
monooose把所有MongoDB中的document都抽象成了Schema对象。使用的时候要mongoose.model(‘xxx’, aSchema);编译成语document对应的一个类来使用。
Mixed数据类型 声明可用

Model

model编译Schema注意事项:

  1. let MyModel = mongoose.model('MyModel', schema);

以上为编译代码。

  1. model函数第一个参数必须和返回值的变量名相同,此值为Model名称。
  2. 生成的Model对应一个集合(collection)。
  3. Model对应的集合默认为Model名全小写加s。本案例中为mymodels。

如想指定集合(collection)的名称。则如下代码,把生成的Model对应到名为custom的集合上:

  1. let MyModel = mongoose.model('MyModel', schema, 'custom');

Connnections

连接数据库代码如下,连接是异步后执行findOne方法,连接是一步的,但此方法并没有放在回调函数中。这是由于mongoose对此进行了封装,findOne方法并没有立即执行而是被压如缓冲区中,等连接成功后再执行。虽然写起来不是异步回调的样式,但是findOne确是异步执行的。

  1. mongoose.connect('mongodb://localhost/myapp');
  2. let MyModel = mongoose.model('Test', new Schema({ name: String }));
  3. // Works
  4. MyModel.findOne(function(error, result) { /* ... */ });

Query

Query类必须举例子才能说清楚。