2.4 启动 MongoDB 1、将 MongoDB 的 bin 目录添加到 path 下(这里我们使用 bruce 的用户变量) ?...在多的表中存放一的id。..."); }); 在新的 js 文件中如何使用上述模块呢?..."student", stuSchema); // 将具体的模型对象暴露出去 exports.model = StuModel; 在新的 js 文件中如何使用上述模块呢?...("student", stuSchema); // 将具体的模型对象直接赋值给 exports module.exports = StuModel; 在新的 js 文件中如何使用上述模块呢?
每个 schema 映射到 MongoDB 的集合(collection)和定义该集合(collection)中的文档的形式。...push向数组字段的末尾添加元素 { push: { arrayField: value, ... } },value 是数组时可与 each 等修饰符组合使用pop移除数组字段中的第一个或最后一个元素...refs 创建 Model 的时候,可给该 Model 中关联存储其它集合 _id 的字段设置 ref 选项。...ref 选项告诉 Mongoose 在使用 populate() 填充的时候使用哪个 Model。...ref 选项告诉 Mongoose 在填充的时候使用 User model。所有储存在 answerer 中的 _id 都必须是 User model 中 document 的 _id。
/model/connect"); 9.在 model 文件夹下新建 user.js 用来创建用户集合 //创建用户集合 //引入mongoose模块 const mongoose = require(..., password:"12346", }); 已插入测试数据,集合创建成功 11.在 app.js 中配置 body-paser //引入body-parser模块 用来处理post请求参数...Register.vue 中使用 elementUI 构建简单注册页面 id="app" class="box"> 注册页面 <el-form.../axios' //将axios添加到vue原型链上 Vue.prototype....$axios = axios 5.在 Register.vue 中验证方法中使用 axios 发送请求 methods: { submitForm(formName) { this.
# mongoDB基本组成 数据库(database):数据库是一个仓库,在仓库中可以存放集合。...集合(collection):集合类似于数组,在集合中可以存放文档。 文档(document):文档数据库中的最小单位,我们存储和操作的内容都是文档。...创建company数据库, 将it666和section集合导入到数据库中 db.it666.find() db.section.find() //24.查询HTML5学院的所有老师 //(cno)..., 有时候我们只需要一个文档中的部分数据, 这时候就得通过映射在查询时, 可以在第二个参数来设置查询的结果投影 db.section.find({}, {name: 1, _id: 0, wages:...,相当于MongoDB数据库中的集合collection + Document: Document表示集合中的具体文档 mongoose使用步骤 1.下载安装Mongoose: npm i mongoose
id=1 http://www.czxy.com/article?id=2 ? 1.2 什么是数据库 数据库即存储数据的仓库,可以将数据进行有序的分门别类的存储。...1.5 数据库相关概念 在一个数据库软件中可以包含多个数据仓库,在每个数据仓库中可以包含多个数据集合,每个数据集合中可以包含多条文档(具体的数据)。...Node.js第三方包mongoose 使用npm install mongoose命令下载 1.7 启动MongoDB 在命令行工具中运行net start mongoDB即可启动MongoDB,否则...将useNewUrlParser: true 和 useUnifiedTopology: true 添加到代码中 //引入mongoose第三方模块用来操作数据库 const mongoose = require...1.9 创建数据库 在MongoDB中不需要显式创建数据库,如果正在使用的数据库不存在,MongoDB会自动创建。
分为两步: 创建集合实例。 调用实例对象下的save方法将数据保存到数据库中。...mongoose验证 在创建集合规则时,可以设置当前字段的验证规则,验证失败就则输入插入失败。...使用id对集合进行关联 使用populate方法进行关联集合查询 ?...使用ID将文章集合和作者集合进行关联 author: { type: mongoose.Schema.Types.ObjectId, ref: 'User' } })); //联合查询 Post.find...,向集合中插入文档 当用户访问/list时,将所有用户信息查询出来 实现路由功能 呈现用户列表页面 从数据库中查询用户信息 将用户信息展示在列表中 将用户信息和表格HTML
,这样可以避免这个文件不会有太多的代码,可读性降低,将代码分离开来,也有助于维护 在使用的时候: // xxx.vue ... this....在实际开发过程中发现,考试系统各个表(集合)都是需要关联,mongodb这种非关系型数据库,做起来反而麻烦了不少。在此将一些数据库增删改查的方法回顾一下。...: 在该集合中,学生参加过的考试记录,存在exams数组中,当想实现分页查询几条数据的时候,需要用到$slice $slice:[start,size] 第一个参数表示,数组开始的下标,第二个表示截取的数量...更多的可以看看我项目中的实际代码都在server/controllers下面 关联集合的新增 在系统中,教师可以增加试卷,这个时候我就不知道该怎么保存前台传过来的数据。..._papers.push(doc1._id); // 试卷中存入试卷的_id,因为此时已经创建了试卷,所以可以拿到_id item._teacher = doc.
简介 本篇主要实现以下目标: 新建goods路由 使用mongoose连接数据库 实现商品列表查询 1....使用mongoose连接数据库 step1 下载mongoose npm install mongoose --save step2 连接mongodb数据库 修改goods.js如下: var express...实现商品列表查询 step1 先建goods集合对应的model 在根目录下新建一个目录models存放所有的model,新建good.js: ?...": Number, // 售价 "checked": String, // 是否被选中(在购物车中) "productNum": Number, // 选购数量 "productImage...diff git add . git status git commit -am 'add model good and route good' git push 参考 mongoose-文档 Mongoose
使用Mongoose操作MongoDB数据库进行关联查询是一种比较常见的操作,操作方式有哪几种呢?下面用一个具体的案例来演示。...在 order_item 中查出 order_id,然后通过order_id 查询 order 集合,查出订单的信息。...OrderModel.find({ "order_id": order_id }, function (err, order) { // 将该商品的订单信息添加到商器信息里...,'order_item'); 在需要查询的文件里引入定义的模型文件,执行操作 // 引入mongoose方便获取ID var mongoose = require('mongoose'); var OrderItemModel...需要注意的是,在 mongoose 里获取 ObjectId,要用 mongoose.Types.ObjectId 才能获取的到。
\Server\5.0\bin-> 点击所有确定保存 win + R 键打开控制台 -> 输入 mongod -> 没有出现不是内部或外部命令说明可以使用了 5 开启MongoDB服务 在命令行工具中运行命令...数据库(database) 数据库是一个仓库,在仓库中可以存放多个集合 集合(collection) 集合类似于数组,在集合中可以存放多个文档 文档(document) 数据库中的最小单位,存储和操作的内容都是文档...原生的 MongoDB 驱动更容易 使用 Mongoose 使用 npm install mongoose命令下载 使用 const mongoose = require('mongoose');...Model 对象作为集合中的所有文档表示 相当于 MongoDB数据库中的集合collection Document 表示集合中的具体文档 Schema 对象 const Schema = mongoose.Schema...,通过 Model 才能对数据库进行操作 // mongoose.model(modelName, Schema); // modelName 是要映射的集合名 // mongoose 会自动将集合名变成复数
\Server\5.0\bin-> 点击所有确定保存 win + R 键打开控制台 -> 输入 mongod -> 没有出现不是内部或外部命令说明可以使用了 5 开启MongoDB服务 在命令行工具中运行命令...数据库(database) 数据库是一个仓库,在仓库中可以存放多个集合 集合(collection) 集合类似于数组,在集合中可以存放多个文档 文档(document) 数据库中的最小单位...原生的 MongoDB 驱动更容易 使用 Mongoose 使用 npm install mongoose命令下载 使用 const mongoose = require('mongoose'); 引入...,通过 Model 才能对数据库进行操作 // mongoose.model(modelName, Schema); // modelName 是要映射的集合名 // mongoose 会自动将集合名变成复数...err){ console.log('插入成功'); } }); Model 方法 Model.create(doc(s), [callback]) 创建一个或多个文档并添加到数据库中
,向集合中插入文档 // 当用户访问/list时,将所有用户信息查询出来 // 实现路由功能 // 呈现用户列表页面 // 从数据库中查询用户信息 将用户信息展示在列表中 //...end', async () => { let user = querystring.parse(formData) // 将用户提交的信息添加到数据库中...end', async () => { let user = querystring.parse(formData) // 将用户提交的信息添加到数据库中...= require('mongoose'); // 创建用户集合规则 const userSchema = new mongoose.Schema({ name: { type...返回集合构造函数 const User = mongoose.model('User', userSchema); module.exports = User;
后端登录逻辑初步实现 step1 使用mongoimport导入users集合 在resources中我上传了users集合文件。...step2 新建users集合对应的model 在models下新建user.js如下: var mongoose = require('mongoose'); var userSchema = new...前端登录逻辑初步实现 这里这里由于之前的重构使用的是弹窗式的登录,不符合我的构想。我自己简单写了一个登录页面,并没有做复杂的校验逻辑。大家可以自行添加,今后我也可能会完善。...另外,这里由于视屏提供的重构已经有了login.css,我将登录页css逻辑写在了该组件内。...git status git diff git add . git status git commit -am 'add model user and change route users' git push
在弹出的输入框中输入:/usr/local回车,如下: ? 将mongodb复制与此文件夹中。...(); ODM - Mongoose 对于mongo,有时候也想直接在程序中定义模型。...文档地址:https://mongoosejs.com/docs/guide.html 安装: npm install mongoose -S 增删改查使用实例 const mongoose = require..., name: String }); // 3.编译一个Model, 它对应数据库中复数、小写的Collection const Model = mongoose.model...Keystone在官网上声称:在Node.js中,用Keystone搭建数据驱动的网站、应用程序和API是最容易的。
实际在数据库中产生的集合名为courses 2.创建文档 创建文档实际上就是向集合中插入数据。 方法1 分为两步: ①创建集合实例。 ②调用实例对象下的save方法将数据保存到数据库中。...bin目录放置在环境变量中。...通常不同集合的数据之间是有关系的,例如文章信息和用户信息存储在不同集合中,但文章是某个用户发表的 要查询文章的所有信息包括发表用户,就需要用到集合关联。...使用id对集合进行关联 使用populate方法进行关联集合查询 ?...= new mongoose.Schema({ title: { type: String }, // 1、使用ID将文章集合和作者集合进行关联 author
}) #mongoose基本使用 #mongoose的几个新的对象 在MongoDB中,多个Document可以组成Collection(以下简称集合),多个集合又可以组成数据库。...集合 —— 由一组文档组成,如果将MongoDB中的一个文档比喻成关系型数据库中的一行,那么一个集合就相当于一张表。...mongoose中任何任何事物都是从Schema开始的。每一个Schema对应MongoDB中的一个集合(collection)。Schema中定义了集合中文档(document)的样式。...已经存在,则会保存到其目录下,如果未存在,则会创建person集合,然后在保存数据。...MongoDB在命令行中的使用方法一样 //查询时只显示name personModel.find({}, {name: 1, _id: 0}, (err,data)=>{ if(!
因为Mongoose是個ODM (Object Document Mapper),类似于操作关系型数据库使用的ORM(Object Relational Mapper),我们使用Mongoose取到的数据的结构是要依赖于我们定义的...增加的属性在(goods)schema中没有定义,所以我们给goods临时附加productNum和checked属性是无效的。...在这里需要说明一下,就是虽然我们给schema附加属性,但是这只是实现能真正挂在该schema上,并没有添加到schema中。...结论:mongodb中使用mongoose取到的对象不能增加属性。 解决方法一, 在schema中直接增加需要补充的属性。...(有时候不是很好) 解决方法二, 把查询到的结果clone一个对象,然后在新对象中补充属性。
准备工作 let mongoose = require("mongoose"); let connection = require("....创建集合 定义UserScheme的数据结构和类型。...updateMany同理如果找到多条记录,则更新所有匹配的记录 删除 删除是艰巨的任务,毕竟删库跑路一直都备受关注,所以在使用的时候一定要小心☠。 默认的情况下remove删除所有匹配的记录。..._id,grade:100}); console.log(score); })() image.png 我们在上面的准备工作里创建了一个UserScheme集合结构,在这里我们又创建ScoreSchema...的表结构,在ScoreSchema结构里面uid是一个外键,类型是一个ObjectId类型,用于标志存储数据的唯一性。
5、mongoose验证 在创建集合规则时,可以设置当前字段的验证规则,验证失败就则输入插入失败。...console.log(err[attr]['message']); } }) 6、集合关联及实现 通常不同集合的数据之间是有关系的,例如文章信息和用户信息存储在不同集合中...使用id对集合进行关联 使用populate方法进行关联集合查询 集合关联实现 // 用户集合 const User = mongoose.model('User', new mongoose.Schema...({ name: { type: String } })); // 文章集合 const Post = mongoose.model('Post', new mongoose.Schema({...title: { type: String }, // 使用ID将文章集合和作者集合进行关联 author: { type: mongoose.Schema.Types.ObjectId
: Boolean }); //使用创建集合 创建构造函数 const Course = mongoose.model('Course', courseSchema) //courses //创建文档...const course = new Course({ name: 'node.js基础', author: '一客', isPublished: true }); //将文档插入数据库中...: Boolean }); //使用创建集合 创建构造函数 const Course = mongoose.model('Course', courseSchema) //courses //创建文档..., hobbies: [String] }); // 使用规则创建集合 const User = mongoose.model('User', userSchema); // 查询用户集合中的所有文档...hobbies: [String] }); // 使用规则创建集合 const User = mongoose.model('User', userSchema); // 查找到一条文档并且删除
领取专属 10元无门槛券
手把手带您无忧上云