- 1、本文档共2页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
这篇文章主要介绍了安装使用
Mongoose
来让
Node.js
操作
MongoDB
的基础教程
,前端
js+后端
node+js 操作
MongoDB
正是所谓最流行的一种
JavaScript 全栈开发方案
,需要的朋友
可以参考下
安装 mongoose
使用 express 准备一个 TestMongoDB 项目,命令序列如下:
express TestMongoDB
cd TestMongoDB
npm install
执行完上面的命令后,使用下面的命令安装 mongoose:
npm install mongoose --save
这个命令会安装 mongoose 并将其作为项目的依赖, 而 mongoose 依赖的 MongoDB driver 以及 regexp 等等模块也会被自动安装。
实例
使用 mongoose 可以新建数据库、 新建集合、对集合内的文档进行 CRUD 操作,在写代码时,可以对照着 mongo shell 验证结果是否符合预期。
在 TestMongoDB 下新建一个 mongo.js 文件,内容如下:
var mongoose = require(mongoose);
mongoose.connect(mongodb://localhost/accounts);
var db = mongoose.connection;
db.on(error, console.error.bind(console, connection error:));
db.once(open, function() {
nbsp;console.log(mongoose opened!);
nbsp;var userSchema = new mongoose.Schema({
nbsp; nbsp;name:{type: String, unique: true},nbsp;
nbsp; nbsp;password:String
nbsp; },nbsp;
nbsp; {collection: accounts}
nbsp; );
nbsp;var User = mongoose.model(accounts, userSchema); nbsp;User.findOne({name:WangEr}, function(err, doc){ nbsp; if(err) console.log(err);
nbsp; else console.log(doc.name + , password - + doc.password); nbsp;});
nbsp;var lisi = new User({name:LiSi, password:123456}); nbsp;lisi.save(function(err, doc){
nbsp; if(err)console.log(err);
nbsp; else console.log(doc.name + saved);
nbsp;});nbsp;
});
上面的文件,直接执行“ node mongo.js”命令即可查看效果。
要使用 mongoose,先 require,然后使用 connect 方法连接数据库。 connect 原型:
connect(uri, options, [callback])
uri 的格式类似: “ mongodb://user:pass@localhost:port/database”。
mongoose 的 connection 对象定义了一些事件,比如 connected、 open、 close、 error 等,
我们可以监听这些事件。
在我们的示例代码里,我监听了 open 事件,在回调函数中,定义了 Schema,调用
mongoose.model 来编译 Schema 得到 Model 对象。需要注意的是,定义 Schema 时指定的 collection 名字与 mongoose.model 的第一参数要保持一致。
拿到了 Model 对象,就可以执行增删改查等操作了。 Model 对象有 find() 、 findOne() 、
update()、 remove()等方法,和我们在 mongo shell 里的用法类似。这些方法都有一个可选的
callback ,当你提供这些 callback 时,执行的结果会通过这个 callback 返回给你。 如果你不提
供,这些方法会返回一个 Query 对象,你可以再通过 Query 组装新的选项,然后调用 Query
的 exec(callback) 来提交查询。
我在代码里查找 WangEr 的档案时用
文档评论(0)