使用ActiveRecord搜索时覆盖deleted_at

时间:2014-10-07 18:20:58

标签: ruby-on-rails activerecord

在某些情况下,我想指定我的ActiveRecord结果应该包含deleted_at不为null的项目。

例如,假设我搜索以下已删除的记录:

 item =Item.find(12345)

我得到了这个结果:

 ActiveRecord::RecordNotFound: Couldn't find Item with id=12345 [WHERE ("items"."deleted_at" IS NULL)]

是否可以设置一个返回活动记录项的参数,其中deleted_at值不为null?

1 个答案:

答案 0 :(得分:5)

您可以通过应用' unscoped'来禁用所有范围。模型的方法,如:

item = Item.unscoped.find(12345)

http://guides.rubyonrails.org/active_record_querying.html#removing-all-scoping