ActiveRecord,按嵌套属性的值查找

时间:2012-05-25 17:06:36

标签: ruby-on-rails ruby ruby-on-rails-3

我有Phone模型嵌套到Message模型。考虑到number属性位于Phone模型内而不是Message,我怎样才能找到给定数字的所有消息?

这就是我目前所拥有的

class Message < ActiveRecord::Base
   attr_accessible  :phone_id
   belong_to :phone
end

class Phone < ActiveRecord::Base
   attr_accessible  :phone
   has_many :messages
end

2 个答案:

答案 0 :(得分:16)

Message.joins(:phone).where(phones: { phone: '555-555-5555' })

答案 1 :(得分:6)

Message.joins(:phone).where("phones.phone = ?","123-456-7890").all