У меня есть RailR 3 ActiveRecord, который принадлежит_ двум различным ActiveRecords.Пример
class Animal < ActiveRecord::Base
belongs_to: species
belongs_to: zoo
...
end
, где таблица животных содержит разновидности видов, зооид, имени и описания, а таблицы видов с научным именем и зоопарком имеют адрес.
В контроллере у меня есть запрос
@animals = Animal.includes(:species, :zoo).order(:name)
и список столбцов, которые я хочу отобразить в представлении,
@columns = ["name", "description", "species.scientific_name", "zoo.address"]
В представлении, я хочусоздание таблицы HTML, которая будет управляться списком имен столбцов, например,
<table>
<tbody>
<tr>
<% @animals.each do |animal| %>
<% %columns.each do |col| } %>
<td><%= animal[</td>
<% end %>
<% end %>
</tr>
</tbody>
</table>
, это прекрасно работает для имени и описания животных, но не работает для видов.scientific_name и zoo.address.
Я знаю, что мог бы в особом случае выполнить цикл и получить доступ к включенным классам напрямую, как animal.species ['Scientific_name'], но я надеялся, что будет способ получить доступ к включенным классам по имени.Что-то вроде животного ['разновидности'] ['научное_имя']