У меня есть массив, составленный из нескольких объектов класса, отсортированных по случайному порядку:
@streams = (Product.all + List.all + Post.all).shuffle
На странице канала (например, на странице шкалы времени в Facebook) содержимое объекта отображается с помощью .each, а для каждого класса применяется определенный фрагмент:
@streams.each do |stream|
<% if stream.is_a?(Product) %>
<%= render 'product_partial', object: stream %>
<% elsif stream.is_a?(List) %>
<%= render 'list_partial', object: stream %>
<% end %>
<% end %>
Цель: поскольку в приложении много продуктов (например, 200) и меньше сообщений (100) и еще меньше списков (10), я хочу отдать приказ каждому контенту с помощью класса. При этом сообщения и списки не будут утоплены в продуктах.
В одном предложении: для 20 товаров показать 2 поста, 1 список.
Есть идеи?
Большое спасибо.