Из запроса:
Изделий продукта имеет множество выпусков (просто укажите здесь связь)
Издание имеет_ множество версий
foo = Version.find(:all, :joins=>"JOIN editions ON versions.edition_id=editions.id JOIN products ON editions.product_id=products.id", :select=>"products.name, versions.name AS what")
puts foo.inspect
Это должно дать вам значение:
[#<Version name: "foobar1">, #<Version name: "foobar2">]
foo[0].what # Will print the value of 'what' returned by the query
Когда я написал похожий запрос с похожей иерархией, он дал мне идеальные результаты. Хотели бы вы поделиться трассировкой стека, если вы получаете сообщение об ошибке?
РЕДАКТИРОВАТЬ: foo [0] .attributes напечатает {"name" => "foobar1", "what" => ""}
Извините за опечатку здесь. Я хотел сказать атрибуты.