При работе с полиморфной ассоциацией можно запустить include на подмоделях, которые присутствуют только в некоторых типах?
Пример:
class Container
belongs_to :contents, :polymorphic => true
end
class Food
has_one :container
belongs_to :expiration
end
class Things
has_one :container
end
В представлении мне захочется сделать что-то вроде:
<% c = Containers.all %>
<% if c.class == Food %>
<%= food.expiration %>
<% end %>
Поэтому я хотел бы с нетерпением ждать истечения срока, когда я загружаю c, потому что знаю, что мне понадобится каждый последний из них. Есть ли способ сделать это? Просто определение регулярного: include получает ошибки, потому что не все закрытые типы имеют срок действия подмодели.