无限滚动with group_by项目

时间:2018-03-23 16:55:23

标签: ruby-on-rails

我试图按照本教程在项目列表上实现无限滚动(又名"游戏"在我的代码中) - > http://railsforbeginners.com/chapters/chapter-9-infinite-scroll/

以下是我的观点:

<% @game_days.each do |day, games| %>

<% for game in games %>

<%= game.game_external_link %>
<%= image_tag game.photos[0].image.url(:thumb), class:"img-responsive" if game.photos.length > 0 %>
<%= game.game_name %>
<%= game.game_description %>
<%= image_tag avatar_url(game.user) %>

<% end %>

<% end %>

我尝试重构代码,将代码放在&lt;%= game.game_external_link%&gt;之间。至&lt;%= image_tag avatar_url(game.user)%&gt;在部分,然后把这&lt;%= render @games%&gt;。但我现在得到一个无限循环:(

所以我需要帮助重构和使用partial(正如文章中所说)。

干杯!

1 个答案:

答案 0 :(得分:0)

# app/vies/games/_game.html.erb
<%= game.game_external_link %>
<%= image_tag game.photos[0].image.url(:thumb), class:"img-responsive" if game.photos.length > 0 %>
<%= game.game_name %>
<%= game.game_description %>
<%= image_tag avatar_url(game.user) %>

然后您可以使用以下内容渲染整个集合:

<%= render games %>

这是:

的简写
<%= render partial: 'game', collection: games %>

请参阅rails guides了解其工作原理。