Подтвердить что ты не робот

Рельсы 3 оказывают частичное с параметрами

У меня проблема с передачей некоторых параметров частичным. Независимо от того, что я пробовал, параметры не передаются при рендеринге части.

Я использую макет с вкладками jquery, и каждая вкладка отображает заказы на работу в определенном состоянии, а также на основе ряда дат.

Я использую params: sort_filter и: status_filter, чтобы выполнить это.

Мой исходный код здесь, но я хочу изменить это, чтобы отобразить частичные ссылки в link_to, а не так, как он был указан здесь:

         <ul>
            <li><%= link_to "Active", work_orders_path(params.merge({:status_filter => "A", :sort_filter => params[:sort_filter]}))  %></li>
            <li><%= link_to "On Hold", work_orders_path(params.merge({:status_filter => "H", :sort_filter => params[:sort_filter]}))  %></li>
            <li><%= link_to "Completed", work_orders_path(params.merge({:status_filter => "C", :sort_filter => params[:sort_filter]}))  %></li>
            <li><%= link_to "Billed", work_orders_path(params.merge({:status_filter => "B", :sort_filter => params[:sort_filter]}))  %></li>
        <li><%= link_to "All", work_orders_path(params.merge({:status_filter => "E", :sort_filter => params[:sort_filter]})) %></li>
     </ul>

Поэтому вместо привязки к индексу в моем work_orders_path, я хотел бы связать с частичным названием viewall. Вот так:

<%= link_to render (:partial => 'viewall', :status_filter => "E", :sort_filter => params[:sort_filter]) %>

Мне нужно иметь возможность передавать объединенные параметры с частичным, если это возможно. Я просмотрел всю документацию и весь день выходил за мои пальцы, чтобы ответить на этот вопрос, но ничего не придумал. Любая помощь будет оценена.

4b9b3361

Ответ 1

Синтаксис для передачи переменной @foo в частичный:

render :partial => "partial", :locals => { :foo => @foo }

Затем он доступен в частичном виде как foo.

См. раздел 3.4.4 этого руководства.

РЕДАКТИРОВАТЬ: с Rails 3.?.? более кратким вариантом является следующее:

render "partial", foo: @foo