我有3个模型Report
,Server
和Platform
。我需要执行一个查询,该查询涉及三个连接所有3个模型并基于此进行查询。但是每当我尝试三次加入
ActiveRecord :: ConfigurationError:名为' platform'没找到;也许你拼错了?
以下是我的模特
报告
class Report < ActiveRecord::Base
belongs_to :server
delegate :company_id, :to => :server
class << self
def method(url, base_url)
Report.joins(:server).joins(:platform).where(:platforms => {:company_id => 5}).all
end
end
end
服务器
class Server < ActiveRecord::Base
has_many :reports
belongs_to :platform
end
平台
class Platform < ActiveRecord::Base
attr_accessible :company_id
has_many :servers
end
答案 0 :(得分:5)
试试这个:(请注意s
中platform
需要它,因为表名是复数形式的):
Report.joins(:server => :platform).where(:platforms => {:company_id => 5}).all