You are viewing a single comment's thread from:

RE: Mongodb数据库快速开发

in #starnote • 13 hours ago
import mongoose from 'mongoose'

mongoose.connect('mongodb://localhost/test')
const { Schema } = mongoose

const kittySchema = new Schema({
  name: String
})
//在这之后你还想添加 keys 的话, 请使用 Schema#add 方法
// 当然,也可以直接在原Schema上添加字段,只是以前的数据就没有这些字段,可以通过更新方法添加
//Schema.prototype.add()
kittySchema.add({ 
  color: String, 
  price: Number 
})

// method 是给 document 用的
// 要在mongoose.model之前添加方法
// 加在 schema methods 属性的函数会编译到 Model 的 prototype, 也会暴露到每个 document 实例
kittySchema.methods.speak = function () {
  let greeting = this.name
    ? "Meow name is " + this.name
    : "I don't have a name"
  console.log(greeting)
}

//model 是我们构造 document 的 Class,它同样会有变量和方法。
const Kitten = mongoose.model('Kitten', kittySchema)

//新增数据
const huahua = new Kitten({
  name: "huahua"
})
huahua.save()
.then((res) => console.log('新增成功', res))
.catch(error => console.log(44, error))

//查找
let kitty = await Kitten.findOne()
kitty.speak()