您现在的位置是:首页 > 后台文章 > NodeNode

Mongoose之 SchemaTypes 数据类型

譬如朝露2019-04-24Node1265人已围观

简介SchemaTypes 数据类型数据类型用于定义默认路径, 验证方式, 获取/设置方法,用于数据库查询的默认字段,以及其他针对字符串与数字的特...

schema:用来定义表的模板,实现和mongodb数据库的映射,不具备操作数据库。

model:具备操作表的能力,是mongoose的核心能力

entity:类似于记录,有model创建的实体。

SchemaTypes 数据类型

数据类型用于定义默认路径, 验证方式, 获取/设置方法,用于数据库查询的默认字段,以及其他针对字符串与数字的特性。关于详细信息请查阅相关API文档。

接下来是Mongoose中所有可用的数据类型。

  • String 字符串

  • Number 数字

  • Date 日期

  • Buffer 缓冲区

  • Boolean 布尔值

  • Mixed 混合

  • Objectid 对象ID

  • Array 数组

var schema = new Schema({
  name:    String,
  binary:  Buffer,
  living:  Boolean,
  updated: { type: Date, default: Date.now },
  age:     { type: Number, min: 18, max: 65 },
  mixed:   Schema.Types.Mixed,
  _someId: Schema.Types.ObjectId,
  array:      [],
  ofString:   [String],
  ofNumber:   [Number],
  ofDates:    [Date],
  ofBuffer:   [Buffer],
  ofBoolean:  [Boolean],
  ofMixed:    [Schema.Types.Mixed],
  ofObjectId: [Schema.Types.ObjectId],
  nested: {
    stuff: { type: String, lowercase: true, trim: true }
  }
})

// example use

var Thing = mongoose.model('Thing', schema);

var m = new Thing;
m.name = 'Statue of Liberty';
m.age = 125;
m.updated = new Date;
m.binary = new Buffer(0);
m.living = false;
m.mixed = { any: { thing: 'i want' } };
m.markModified('mixed');
m._someId = new mongoose.Types.ObjectId;
m.array.push(1);
m.ofString.push("strings!");
m.ofNumber.unshift(1,2,3,4);
m.ofDates.addToSet(new Date);
m.ofBuffer.pop();
m.ofMixed = [1, [], 'three', { four: 5 }];
m.nested.stuff = 'good';
m.save(callback);

mongoose连表查询:https://www.cnblogs.com/showtime813/p/4564157.html

譬如朝露

站长特荐

关闭
QQ 微信 支付宝扫一扫打赏