mongoose关联表结构

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongoose关联表结构相关的知识,希望对你有一定的参考价值。

 

var articleSchema = new mongoose.Schema({
  
    comments: {

    },
    // 关联字段==把分类的_id存在这
    category: {
        type: mongoose.Schema.Types.ObjectId,
        // 引用  ref:后的是Classify模型
        ref: "Classify" 

    },



})
//创建文章的时候给option的value绑定 分类的id
<select name="category" id="category" v-model="article.classify"  >
            <option  v-for="(item,index) in classifyList"  v-bind:value=item._id>{{item.name}}</option>
        </select>
// 发布文章的时候将分类的_id存进去
router.post(‘/article/create‘, (req, res) => {
  var article = req.body
  console.log(article)
  new Article({
    title: article.title,
    content: article.content,
    category:article.classify
  }).save().then(rs=>{
      res.send(‘200‘)
  })

})
// 获取所有文章
//populate内是文章属性,这样一来category就保存了分类下的所有属性 ,前端想要调用就category.name,如果没有populate这一步存的仅仅是_id
router.get(‘/article/getlist‘,(req,res)=>{
    Article.find().populate(‘category‘).then(doc=>{
        console.log(doc)
        res.send(doc)
    })
})

 

以上是关于mongoose关联表结构的主要内容,如果未能解决你的问题,请参考以下文章

Egg中使用Mongoose实现数据库表的关联查询

19-3-18 mongoose 连表查询populate用法

Express实战 - 应用案例- realworld-API - 路由设计 - mongoose - 数据验证 - 密码加密 - 登录接口 - 身份认证 - token - 增删改查API(代码片段

mongoose基本操作

MongoDB(Mongoose)数据库结构题

Mongoose中关联查询populate的使用