Mongoose二级连表查询

Mongoose二级连表查询

首先定义两个Schema,然后 model ;

DB.js

  1. // 分类
  2. let CategorieSchema = new mongoose.Schema({
  3.     "name" : String,
  4.     "img" : String,
  5.     "date": Date
  6. });
  7. CategorieSchema.index({ "date": 1});
  8. // 商品
  9. let GoodsSchema = new mongoose.Schema({
  10.     "name" : String,
  11.     "img" : String,
  12.     "date": Date,
  13.     "count": Number,
  14.     "content": String,
  15.     "categoryId": {
  16.         type: mongoose.Schema.ObjectId,
  17.         ref: 'n_categorie'  // 此处名称为let n_goods 的n_goods 区分大小写
  18.     }
  19. });
  20. GoodsSchema.index({ "name": 1, "categoryId": 1});
  21. GoodsSchema.statics = {
  22.     findCategoryByGoodsId:function (goodsId,callback) {
  23.         return this.findOne({_id: goodsId}).populate('categoryId').exec(callback)
  24.     }
  25. };
  26. //model
  27. let n_categorie = mongoose.model("n_categorie",CategorieSchema);
  28. let n_goods = mongoose.model("n_goods",GoodsSchema);
  29. exports.n_categorie = n_categorie;
  30. exports.n_goods = n_goods;

在需要的地方查询:

  1. const DB = require("../model/DB.js");
  2. DB.n_goods.findCategoryByGoodsId('5afc612ebe2db7194a3a703a',function (err ,category) {
  3.         if (err) console.log(err)
  4.         console.log(category.categoryId.name)
  5.  })

 

暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇