У меня есть список фильмов на странице, перед которой стоит список категорий. Изначально в списке фильмов будут фильмы всех категорий. Но когда пользователь нажимает одну категорию, я бы хотел, чтобы этот список заменялся фильмами только из выбранной категории.
<% @categories.each do |category| %>
<tr><td><%= link_to category, '/movies/show_category', :category => category, :remote => true%></td></tr>
<% end %>
<div id="#movies_list">
<% @movies.each do |movie| %>
<tr>
<td><%= movie.title %></td>
<td><%= movie.category %> </td>
<td><%= movie.rating %></td>
<% if !current_user.nil? %>
<% if movie.user.email == current_user.email %>
<td><%= link_to 'Show', movie, :class => "btn btn-primary"%></td>
<td><%= link_to 'Edit', edit_movie_path(movie), :class => "btn btn-primary" %></td>
<td><%= link_to 'Destroy', movie, method: :delete, data: { confirm: 'Are you sure?' }, :class => "btn btn-primary" %></td>
<% end %>
<% end %>
</tr>
<% end %>
</div>
Я использовал div с id #movies_list
, чтобы я мог заменить этот div, используя js и part.
Это мой show_category.js.erb
файл:
$("#movies_list").html("<%= escape_javascript(render("show_category")) %>");
А это мой частичный _show_category.html.erb
:
<% @movies_by_category.each do |key, value| %>
<tr> </tr>
<tr> </tr>
<% if key == params[:category]%>
<th> <%= key %> <th>
<% value.each do |movie| %>
<tr>
<td><%= movie.title %></td>
<td><%= movie.rating %></td>
<% if false %>
<td>
<%= form_for @rating do |rating_form| %>
<%= rating_form.number_field :rating, class: 'rating', 'data-size' => 'xs'%>
<%= rating_form.submit 'Add', class: 'btn btn-primary btn-success' %>
<% end %>
</td>
<% end %>
<% if !current_user.nil? %>
<% if movie.user.email == current_user.email %>
<td><%= link_to 'Show', movie, :class => "btn btn-primary"%></td>
<td><%= link_to 'Edit', edit_movie_path(movie), :class => "btn btn-primary" %></td>
<td><%= link_to 'Destroy', movie, method: :delete, data: { confirm: 'Are you sure?' }, :class => "btn btn-primary" %></td>
<% end %>
<% end %>
</tr>
<% end%>
<% end %>
<% end %>
Однако мой javascript никогда не вызывается! Что я здесь не так делаю? Пожалуйста, помогите!