1
ゲームを部分的にレンダリングしようとすると、レンダリングされているビューでは何も返されません。あなたが部分的にローカル変数として@games
を渡す必要がありRailsレンダリングの問題
<%= flash[:notice] %>
<tr>
<% @games.each do |game| %>
<td><%= game.name %></td>
<td><%= link_to('Pick!', vote_up_game_path(game.id), :method => :post) %></td>
</tr>
<% end %>
Rails 2では、コントローラから生成されたインスタンス変数を明示的にパーシャルに渡す必要はありません。 :localsパラメータは、呼び出し元から利用可能な変数からの部分変数のコンテキスト内でローカル変数を作成するためのものです。 – Nick
これは実際には当てはまりますが、インスタンス変数をローカルとして渡すことは物事を少しきれいに保つ傾向があります。私はこれが個人的な好みに開いていると思います。私はドキュメントがこれをよりよく解明してくれると信じています。「ローカル変数を部分変数に渡すこともでき、より強力で柔軟なものにすることができます。たとえば、このテクニックを使用して、新しいページと編集ページ間の重複を減らしながら、別個のコンテンツを残しておくことができます –