加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby – Mongoid删除文档匹配ID

发布时间:2020-12-17 03:42:21 所属栏目:百科 来源:网络整理
导读:我正在尝试删除我的收藏中的重复文档.这是我的代码: class Sites include Mongoid::Document store_in collection: "sites"endSites.destroy_all(conditions: { _id: BSON::ObjectId("5685a45be4b06ab5911dcd12")}) 这是返回的内容: D,[2015-12-31T17:39:1
我正在尝试删除我的收藏中的重复文档.这是我的代码:

class Sites
  include Mongoid::Document
  store_in collection: "sites"
end

Sites.destroy_all(conditions: { _id: BSON::ObjectId("5685a45be4b06ab5911dcd12")})

这是返回的内容:

D,[2015-12-31T17:39:16.488657 #10126] DEBUG -- : MONGODB | localhost:27017 | rails.find | STARTED | {"find"=>"sites","filter"=>{"conditions"=>{"_id"=>BSON::ObjectId('5685a45be4b06ab5911dcd12')}}}
D,[2015-12-31T17:39:16.488946 #10126] DEBUG -- : MONGODB | localhost:27017 | rails.find | SUCCEEDED | 0.000189083s

但是当我搜索文件时仍然存在:(

{"_id"=>BSON::ObjectId('5685a45be4b06ab5911dcd12'),"name"=>"StackOverflow","title"=>"Stack Overflow","type"=>"Forum","url"=>"http://www.stackoverflow.com"}

如何使用Mongoid通过引用永久删除文档?

解决方法

具有5.x的Mongoid与我们习惯的AR方法的关系更为密切,因此您的id字段的行为方式类似.

Sites.where(id: '5685a45be4b06ab5911dcd12').delete

要调用所有必要的回调,只需使用.destroy即可.只知道这会将所有内容加载到内存中并且可能很昂贵.

Sites.where(id: '5685a45be4b06ab5911dcd12').destroy

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读