删除记录

4种不同的方法

静态方法:

  • remove(criterion or criteria)
  • findOneAndRemove(criterion or criteria)
  • findByIdAndRemove(criterion or criteria)

实例方法:

  • remove()

在每次测试前创建一个实例

在test里面创建delete_test.js文件:

const assert = require('assert');
const User = require('../src/user');
describe('Deleting a user', () => {
         let joe;
         //每次测试前先创建一个实例
         beforeEach((done) => {
            joe = new User({name : 'Joe'});
            joe.save()
                .then(() => done());
         });
});

实例方法remove

//实例方法
         it('model instance remove', (done) => {
            joe.remove()
            .then(() => User.findOne({name : 'Joe'}))
                .then((user) => {
                      assert(user === null);
                      done();
                });
         });

静态方法remove

//静态方法
         it('class method remove', (done) => {
            //删除所有符合条件的记录
            User.remove({name : 'Joe'})
            .then(() => User.findOne({name : 'Joe'}))//Promise里面调用查找操作
                .then((user) => {//返回第二个Promise
                      assert(user === null);
                      done();
                });
         });

静态方法findOneAndRemove

//静态方法
         it('class method findOneAndRemove', (done) => {
            User.findOneAndRemove({name : 'Joe'})
            .then(() => User.findOne({name : 'Joe'}))
                .then((user) => {
                      assert(user === null);
                      done();
                });
            
         });

静态方法findByIdAndRemove

//静态方法
         it('class method findByIdAndRemove', (done) => {
            //User.findByIdAndRemove({_id : joe._id})
            User.findByIdAndRemove(joe._id)
            .then(() => User.findOne({name : 'Joe'}))
                .then((user) => {
                  assert(user === null);
                  done();
                });
         });
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,850评论 19 139
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 32,511评论 18 399
  • 这部分主要是开源Java EE框架方面的内容,包括Hibernate、MyBatis、Spring、Spring ...
    杂货铺老板阅读 5,303评论 0 2
  • 转自:http://blog.csdn.net/jackfrued/article/details/4493116...
    王帅199207阅读 7,475评论 0 19
  • “成都”,我心心念念了8年的城市,从2008年汶川地震开始,“四川”似乎一直是我的一个梦。从前总因为各种原因...
    逆时针的舞阅读 1,409评论 1 1

友情链接更多精彩内容