Mongoose 学习

啥也不说了,赶紧推荐一篇文章,非常棒

https://cnodejs.org/topic/504b4924e2b84515770103dd
对于刚接触mongoose的人来说,要知道mongoose到底是什么,Mongoose库简而言之就是在node环境中操作MongoDB数据库的一种便捷的封装。之后我么要知道Schema骨架,Model模型,Entity实体,
这篇文章上面主要介绍了这些东西,和一些常用的操作,简而言之就是,在Schema发布Model,Model创建实体Entity。
每个层次有他们的职能,要搞清楚后才能更好地写代码,
在Schema上我们可以创建方法,类似于JS的里的方法,可以被实体中使用方法,如果学过JS就很好理解,就类似于原型方法。只要是一个Model下的大家公用。我们数据库中最重要的当然也是查询,查询功能机就需要在Mode或者Entity层次下进行查询,至于增删改查这种具体的CRUD是在实体完成的。类似我们添加用户或删除用户,都需要在Entity层次下进行。附上一段代码可能更好理解

router.post('/admin/music/new', function(req, res){
  console.log(req.body.music)
  var id = req.body.music._id
  var musicObj = req.body.music
  var _music

  if(id != 'undefined'){
    Music.findById(id, function(err, music){
      if(err){
        console.log(err)
      }
      _music = _.extend(music, musicObj)
      _music.save(function(err, music){
        if(err){
          console.log(err)
        }
        res.redirect('/music/'+music._id)
      })
    })
  }
  else{
    _music = new Music({
      musicer: musicObj.musicer,
      title: musicObj.title,
      country: musicObj.country,
      language: musicObj.language,
      year: musicObj.year,
      poster: musicObj.poster,
      flash: musicObj.flash,
      summary: musicObj.summary
    })
    _music.save(function(err, music){
       if(err){
          console.log(err)
        }
        console.log(music._id)
        res.redirect('/music/'+music._id)
    })
  }
})

这是一个简单的后台录入界面,可以看出save方法是_music调用的,而music是new出来的实体。。代码看不懂没关系,主要是知道实体用来执行CURD操作。

只要搞懂这三个层次,mongoose就很好理解,再结合上面的文章,轻松入门。。

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小疯疯0413

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值