Trong mô hình Post.rb tôi, tôi có default_scope :conditions => {:deleted => 'false'}
default_scope Overriding trong Rails
Nhưng nếu tôi cố gắng chạy Post.find(:all, :conditions => "deleted='false'")
, nó sẽ không trở lại bất cứ điều gì. Nó giống như default_scope được ưu tiên hơn mọi thứ.
Tôi muốn nó để khi tôi làm Post.find()
nó không trả lại bài đăng đã xóa, nhưng tôi cũng muốn có thể truy cập chúng nếu tôi cần. Những gì cần phải được thay đổi trong truy vấn của tôi hoặc mô hình Rails của tôi?
Cảm ơn.
'default_scope' * không * được ưu tiên hơn mọi thứ. Tôi đã viết một câu trả lời bằng cách sử dụng 'named_scope' cho câu hỏi trước của bạn mà tôi nghĩ rằng sẽ được áp dụng ở đây là tốt: http://stackoverflow.com/questions/2073197/how-to-get-a-model-to-specify-a- Điều kiện tiên quyết/2073858 # 2073858 – jerhinesmith