我有2个型号 - User和User_detail。
表:
User
|id|
User_detail
|id|user_id|active|
UserDetails模型:
class UserDetails < ActiveRecord::Base
belongs_to :user
scope :active, -> { where("active is null or active = true") }
end
如何在查询中使用此范围以仅获取活动用户?
这样的事情:
User.joins(:user_details).active
答案 0 :(得分:0)
这应该有效:
User.joins(:user_details).merge(UserDetails.active)
查看http://asciicasts.com/episodes/215-advanced-queries-in-rails-3了解更多ActiveRecord技巧!
答案 1 :(得分:0)
这似乎有效:
User.joins(:user_details).merge(UserDetails.active)
参考:Ruby / Rails - Can I use a joined table's scope(or class method) as part of my WHERE clause?