У меня есть информация, которую я хочу упростить, используя некоторые частичные. В принципе, я хочу что-то сделать по строкамRails Render Partial Inside One Line Block
<%= 2.times { |j| render 'item_expanded', item: @social_json_feed[i + j], index: (i + j) } %>
Однако вышеуказанный код не отображает частичный. Вместо этого он возвращает значение «2» два раза. Если я напишу блок как блок do-end, он работает так, как и следовало ожидать.
<% 2.times do |j| %>
<%= render 'item_expanded', item: @social_json_feed[i + j], index: (i + j) %>
<% end %>
Производит частичный способ, который я хочу. Но если блок do-end работает правильно, однострочный блок должен также работать правильно, верно? Это просто что-то о том, как отформатирован однострочный блок или что-то еще глубже в магии Rails? Кроме того, почему первый пример кода возвращает «2» дважды?
Что произойдет, если вы удалите знак равенства? <% 2times {| j | render 'item_expanded', item: @social_json_feed [i + j], index: (i + j)}%> – javiyu
Это ничего не отображает. ERB должен «=» указывать, что логика должна отображаться на странице. –