📅  最后修改于: 2023-12-03 15:24:56.310000             🧑  作者: Mango
Mongoose 是一个优秀的 MongoDB 对象模型工具,它可以帮助我们在 Node.js 应用程序中定义 Schema、Model 和实现数据的 CRUD 操作。本篇文章将详细介绍如何连接到 Mongoose 并创建模型。
在开始之前,你需要安装 Mongoose。可以使用 npm 命令进行安装:
npm install mongoose
Mongoose 默认连接到 MongoDB 测试数据库,我们需要修改它连接到我们自己的数据库。可以使用下面的代码连接到 MongoDB 数据库:
const mongoose = require('mongoose');
const uri = 'mongodb://localhost:27017/myapp';
mongoose.connect(uri, {
useNewUrlParser: true,
useCreateIndex: true,
useUnifiedTopology: true
});
const connection = mongoose.connection;
connection.once('open', () => {
console.log('MongoDB database connection established successfully!');
});
uri 参数指定了要连接的 MongoDB 数据库的地址和端口号。在这个例子中,我们要连接到本地 MongoDB 数据库,并且数据库名为 myapp。如果 myapp 数据库不存在,则会自动创建。
useNewUrlParser、useCreateIndex 和 useUnifiedTopology 是 Mongoose 连接选项。它们会帮助我们避免一些警告问题。
最后,我们监听了一次连接事件(open event),当连接成功时,回调函数会被调用。
Mongoose 中的 Schema 是用来定义数据的结构的,Model 则是用来查询以及存储数据的实例。下面是一个使用 Mongoose 定义 Schema 和 Model 的例子:
const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const userSchema = new Schema({
name: {
type: String,
required: true,
unique: true
},
email: {
type: String,
required: true,
unique: true
},
password: {
type: String,
required: true
}
});
const User = mongoose.model('User', userSchema);
以上代码先定义了一个 User 的 Schema,在 Schema 中,我们定义了三个字段:name、email 和 password。name 和 email 字段都是字符串类型,并且是必填的,同时唯一(unique)的。password 字段也是必填的,但没有唯一性规定。
然后,我们使用 mongoose.model() 方法来定义一个叫做 User 的 Model。这个 Model 参数包含两个参数:
以上就是关于如何连接到 Mongoose 并创建模型的全部内容。我们首先安装了 Mongoose,之后建立了数据库连接,最后使用 Schema 和 Model 定义了数据结构和 Model 实例。这让我们可以更加方便地操作 MongoDB 数据库了。