次の関連付けを設定しています
class bookinghdr
belongs_to :agent
end
class bookingitem
belongs_to :bookinghdr, :include => agent
end
そのため、次のことができると期待していました。
named_scope :prepay, :include=>["bookinghdr"], :conditions => ["bookinghdr.agent.agenttype = 'PP'"]
そして私のコントローラーで次のことを行います:
b = Bookingitem.prepay
しかし、それは私に ActiveRecord::StatementInvalid: Mysql::Error: Unknown column 'bookinghdr.agent.agenttype' を与えます
ただし、条件句を含めない場合は、実行できるレコードセットを取得します。
b = Bookingitem.prepay
b[0].bookinghdr.agent.agenttype
エラーなしで!
すべてのレコードを取得してから、それらを繰り返し処理して、エージェントに 'PP@ フラグがあるレコードを見つける必要はありません。ARがそれをしてくれることを望んでいました。
これを達成する方法について誰かアイデアがありますか?