2012-05-18 2 views
0

В некоторых моих моделях я хочу иметь флаг удалённый/неактивный. В 99% случаев меня не интересуют объекты модели, у которых есть этот флаг, и легко забыть исключить записи с этим флагом, поэтому мой вопрос таков:Скрыть определенные записи по умолчанию при использовании методов поиска ActiveRecord

Есть ли хороший способ их исключения по умолчанию при использовании методы поиска ActiveRecord, такие как where, find и т. д.?

ответ

1

Место это в определении модели:

default_scope :conditions => { :deleted => true } 

Но, если вы хотите больше гибкости, вы можете использовать Paranoia, который псевдонимами уничтожить действия, а также реализует область по умолчанию, среди других вещей.

+0

Работает как очарование, спасибо! Для кого-либо еще, опустившегося, обратите внимание, что первое «=>» должно быть удалено. – rogerkk

+0

Упс .. Исправлено это для будущих справок. – Tiago

Смежные вопросы