mongoose.model方法中第一个字符串参数的相关性是什么?

时间:2016-10-28 02:42:48

标签: mongodb mongoose nodes

在编译模式时我们使用mongoose.model,我无法理解模型方法接受的第一个String参数的相关性

var Kitten = mongoose.model('Kitten', kittySchema);

这里模型方法中的第一个参数是' Kitten'第二个参数是模式,我可以给第一个参数赋予任何名称吗?

在文档http://mongoosejs.com/docs/api.html#model-js

中不明确
  

我指的是正确的文档吗?

2 个答案:

答案 0 :(得分:0)

我们需要将架构转换为我们可以使用的模型。为此,我们将其传递给 mongoose.model(modelName,schema)

因此您可以使用 modelName 所需的任何名称,但它应该意味着完整

如果您将userSchema定义为型号名称UserCustomer,则

也有效:

mongoose.model('User', userSchema);然后表格将成为名为users

的创建者

mongoose.model('Customer', userSchema);然后表格将成为名为customers

的创建者

see this documentthis one

答案 1 :(得分:0)

在您的示例中:

var Kitten = mongoose.model('Kitten', kittySchema);

变量名称Kitten和参数字符串"Kitten"之间的区别在于,kitten是模型名称,“小猫”是集合名称。

注意::mongodb会将字符串“ Kitten”转换为复数形式,因此您将找到名为“ Kittens”的集合(末尾带有“ s ” )在mongodb中。