У меня есть страница, которая отображает 3 списка результатов поиска: иллюстрации, романы и теги. Я хочу разрешить пользователю щелкнуть ссылку для каждого из списков, чтобы увидеть сетку эскизов. Я не могу за всю жизнь понять, как передать объекты результатов поиска на новую страницу. Я получаю только строки идентификаторов иллюстраций.Ссылка на другое изображение результатов поиска
Метод поиска main_controller, и то, что я пытаюсь сделать, чтобы show_illustrations:
def search
@search_criteria = params[:search]
@novels = Novel.search(params[:search])
@illustrations = Illustration.search(params[:search])
@tags = Tag.search(params[:search])
respond_to do |format|
format.html #search_results.html.erb
end
end
def show_illustrations
@illustrations = params[:illustrations]
end
Парциальным, который показывает список иллюстраций в результатах поиска. Приложение настаивает на вызов методы шоу из основных, даже если я назначу действие в заявлении link_to к «show_illustrations»:
<% if @illustrations.size() > 0 %>
<div class="row-fluid">
<div class="span8">
<h3>Illustrations</h3>
</div>
<div class="span4">
<%= link_to "View", {:controller => "main", :action => "show_illustrations", :illustrations => @illustrations}, :class => "btn btn-mini"%>
</div></div>
<div class="search_results well-search-results">
<table class="table table-striped table-condensed">
<% @illustrations.each do |illustration| %>
<tr>
<td><%= illustration.name %></td>
<td><%= link_to "Show", illustration, :class => "btn btn-primary btn-mini", :style => "float:right;" %></td>
</tr>
<% end %>
</table>
</div>
<% else %>
<h3>No Matching Illustrations</h3>
<% end %>
страница, которая должна показать сетку иллюстраций, под названием searched_illustrations.html.erb:
<div class="container">
<div class="well padding:0px;">
<% @illustrations.each_slice(4) do |set| %>
<div class="row-fluid">
<% set.each do |illustration| %>
<div class="span3">
<div style="text-align:center"><%= link_to image_tag(illustration.image_thumbnail_url), illustration %>
<br />
<%= illustration.name %><br />
<%= link_to illustration.novel.name, illustration.novel %> -
<%= illustration.novel.edition %>
<% if ! illustration.tags.empty? %>
<br />
<% illustration.tags.each do |tag| %>
<%= tag %>
<% end %>
<% end %>
</div>
<br />
</div>
<% end %>
</div>
<br \>
<% end %>
</div>
</div>
routes.rb:
match 'main/show_illustrations' => 'main#show_illustrations', as: :show_illustrations