{"id":203,"date":"2021-02-10T10:11:09","date_gmt":"2021-02-10T02:11:09","guid":{"rendered":"http:\/\/gjweb.top\/?p=203"},"modified":"2022-03-29T17:57:52","modified_gmt":"2022-03-29T09:57:52","slug":"mongoose%e6%93%8d%e4%bd%9c","status":"publish","type":"post","link":"https:\/\/gjweb.top\/?p=203","title":{"rendered":"mongoose\u64cd\u4f5c(\u65e7\u7248)"},"content":{"rendered":"\n<h2 class=\"wp-block-heading\">mongoose\u7684\u4f7f\u7528<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u7b80\u4ecb<\/h3>\n\n\n\n<p>\u662f\u4e00\u4e2a\u5bf9\u6587\u6863\u6a21\u578b(ODM)\u5e93,\u4ed6\u5bf9Node\u539f\u751f\u7684mongoDB\u6a21\u5757\u8fdb\u884c\u4e86\u8fdb\u4e00\u6b65\u7684\u4f18\u5316\u5c01\u88c5,\u5e76\u63d0\u4f9b\u4e86\u66f4\u591a\u7684\u529f\u80fd.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">\u4f18\u52bf<\/h3>\n\n\n\n<ul class=\"wp-block-list\"><li>\u6bd4Node\u8fdc\u7a0b\u7684MongoDB\u9a71\u52a8\u66f4\u5bb9\u6613<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">\u521d\u59cb\u5316<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">npm init -y<br>npm install uniq mongoose<\/pre>\n\n\n\n<pre class=\"wp-block-preformatted\">let mongoose = require(\"mongoose\")<br>\/\/ 1.\u8fde\u63a5\u6570\u636e\u5e93<br>\/*\u4e00\u65e6\u8fd0\u884c\u6301\u7eed\u62a5\u4fdd\u6301\u8fde\u63a5, test\u5c31\u662f\u6570\u636e\u5e93 \u5982\u679c\u6ca1\u6709\u81ea\u52a8\u521b\u5efa*\/<br>mongoose.connect('mongodb:\/\/localhost:27017\/test',{<br> &nbsp; &nbsp;useNewUrlParser:true, \/\/ \u4f7f\u7528\u65b0\u7684URL\u89e3\u6790\u5668,\u7528\u4e8e\u89e3\u51b3\u4e00\u4e9b\u5b89\u5168\u6027\u95ee\u9898<br> &nbsp; &nbsp;useUnifiedTopology:true \/\/\u7edf\u4e00\u62d3\u6251\u7ed3\u6784 <br>})<br>\/\/ \u7ed1\u5b9a\u6570\u636e\u5e93\u8fde\u63a5\u7684\u76d1\u542c<br>mongoose.connection.on('open',function(err){<br> &nbsp;if(err){<br> &nbsp; &nbsp; console.log(\"\u6570\u636e\u5e93\u8fde\u63a5\u5931\u8d25\",err)<br>  } else{<br> &nbsp; &nbsp; console.log(\"\u6570\u636e\u5e93\u8fde\u63a5\u6210\u529f\")<br>     \/\/ \u64cd\u4f5c\u6570\u636e\u5e93<br> &nbsp; &nbsp; let Schema = mogoose.Schema <br>  }<br>})<\/pre>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h2 class=\"wp-block-heading\">mongoose\u521b\u5efa\u6a21\u578b<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">\u521b\u5efa\u6a21\u578b<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">\/\/ \u8fdb\u5165\u6a21\u5f0f\u5bf9\u8c61<br>let Schema = &nbsp;mongoose.Schema;<br>\/\/ \u521b\u5efa\u7ea6\u675f\u5bf9\u8c61<br>let studentsRule = new Schema({<br> &nbsp; &nbsp;className:{<br> &nbsp; &nbsp; &nbsp; &nbsp;type:String,<br> &nbsp; &nbsp; &nbsp; &nbsp;required:true, \/\/ \u662f\u5426\u5fc5\u586b<br> &nbsp; &nbsp; &nbsp; &nbsp;unique:true, \/\/ \u662f\u5426\u552f\u4e00(\u4e0d\u53ef\u91cd\u590d)<br> &nbsp; &nbsp; &nbsp; &nbsp;default:\"xxx\" \/\/ \u9ed8\u8ba4\u503c<br> &nbsp;  },<br> &nbsp; &nbsp;hobby:[String], \/\/ \u9650\u5236\u7c7b\u578b\u53ea\u80fd\u7ef4\u6570\u7ec4,\u6570\u7ec4\u4e2d\u6bcf\u4e00\u9879\u5fc5\u987b\u4e3a\u5b57\u7b26\u4e32<br> &nbsp; &nbsp;info:Schema.Types.Mixed, \/\/ \u63a5\u53d7\u6240\u6709\u7c7b\u578b<br>})<br>\/*<br>    \u5907\u6ce8: type\u8868\u793a\u5b57\u6bb5\u7684\u7c7b\u578b\u53ef\u4ee5\u662f  String Number Booler Date\u7b49<br>*\/<br>\/\/ \u521b\u5efa\u6a21\u578b\u5bf9\u8c61<br>\/\/ \u7528\u4e8e\u751f\u6210\u67d0\u4e2a\u96c6\u5408\u6240\u5bf9\u5e94\u7684\u6a21\u578b\u5bf9\u8c61<br>let stuModel = mongoose.model('students',studentsRule)<\/pre>\n\n\n\n<hr class=\"wp-block-separator\"\/>\n\n\n\n<h3 class=\"wp-block-heading\">\u589e\u52a0<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">stuModel.create({<br> &nbsp; &nbsp;className:\"3\u73ed\",<br> &nbsp; &nbsp;hobby:['\u7231\u597d'],<br> &nbsp; &nbsp;info:\"\u57fa\u672c\u4fe1\u606f\"<br>},(err,data)=&gt;{<br> &nbsp; &nbsp;if(err){console.log(err)}<br> &nbsp; &nbsp;else{console.log(data)}<br>})<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u67e5\u8be2<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">\/*<br>    fiund\u65b9\u6cd5<br>        \u8fd4\u56de\u4e00\u4e2a\u6570\u7ec4<br>        \u67e5\u8be2\u4e3a\u7a7a\u8fd4\u56de\u7a7a\u6570\u7ec4<br>*\/<br>stuModel.find({className:'3\u73ed'},(err,data)=&gt;{<br> &nbsp; &nbsp;if(err){console.log(err)}<br> &nbsp; &nbsp;else{console.log(data)}<br>})<br>\/*<br>    findOne\u65b9\u6cd5<br>        \u8fd4\u56de\u4e00\u4e2a\u5bf9\u8c61<br>        \u67e5\u8be2\u4e3a\u7a7a\u8fd4\u56de null<br>*\/<br>stuModel.findOne({className:'3\u73ed'},(err,data)=&gt;{<br> &nbsp; &nbsp;if(err){console.log(err)}<br> &nbsp; &nbsp;else{console.log(data)}<br>})<br>\u200b<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u66f4\u65b0<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">\/*<br>    updateMany\u65b9\u6cd5 \u66f4\u65b0\u591a\u5339\u914d\u7684\u5185\u5bb9<br>    updateOne\u65b9\u6cd5 \u66f4\u65b0\u4e00\u4e2a\u5339\u914d\u7684\u5185\u5bb9<br>*\/<br>stuModel.updateMany({className:'3\u73ed'},(err,data)=&gt;{<br> &nbsp; &nbsp;if(err){console.log(err)}<br> &nbsp; &nbsp;else{console.log(data)}<br>})<\/pre>\n\n\n\n<h3 class=\"wp-block-heading\">\u5220\u9664<\/h3>\n\n\n\n<pre class=\"wp-block-preformatted\">\/*<br>    deleteMany \u65b9\u6cd5 \u5220\u9664\u591a\u4e2a\u5339\u914d\u9879<br>    delleOne \u65b9\u6cd5 \u5220\u9664\u4e00\u4e2a\u5339\u914d\u9879<br>*\/<br>stuModel.deleteMany({className:'3\u73ed'},(err,data)=&gt;{<br> &nbsp; &nbsp;if(err){console.log(err)}<br> &nbsp; &nbsp;else{console.log(data)}<br>})<\/pre>\n\n\n\n<p><\/p>\n","protected":false},"excerpt":{"rendered":"<p>mongoose\u7684\u4f7f\u7528 \u7b80\u4ecb \u662f\u4e00\u4e2a\u5bf9\u6587\u6863\u6a21\u578b(ODM)\u5e93,\u4ed6\u5bf9Node\u539f\u751f\u7684mongoDB\u6a21\u5757\u8fdb\u884c\u4e86\u8fdb\u4e00\u6b65\u7684 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[25],"tags":[],"class_list":["post-203","post","type-post","status-publish","format-standard","hentry","category-monggodb"],"_links":{"self":[{"href":"https:\/\/gjweb.top\/index.php?rest_route=\/wp\/v2\/posts\/203","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/gjweb.top\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/gjweb.top\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/gjweb.top\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/gjweb.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=203"}],"version-history":[{"count":1,"href":"https:\/\/gjweb.top\/index.php?rest_route=\/wp\/v2\/posts\/203\/revisions"}],"predecessor-version":[{"id":389,"href":"https:\/\/gjweb.top\/index.php?rest_route=\/wp\/v2\/posts\/203\/revisions\/389"}],"wp:attachment":[{"href":"https:\/\/gjweb.top\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=203"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/gjweb.top\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=203"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/gjweb.top\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=203"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}