12

我在将一些参数传递给部分参数时遇到问题。无论我尝试了什么,在渲染部分时参数都不会通过。

我正在使用 jquery 选项卡式布局,每个选项卡都显示特定状态的工作订单,并且还基于一系列日期。

我正在使用参数 :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]) %>

如果可能的话,我需要能够将合并的参数与部分参数一起传递。我查看了所有文档,昨天一整天都在用谷歌搜索这个问题的答案,但仍然一无所获。任何帮助,将不胜感激。

4

1 回答 1

31

将变量传递给部分的语法@foo是这样的:

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

然后它在部分 as 中可用foo

请参阅本指南的第 3.4.4 节。

编辑:由于 Rails 3.?.?,更简洁的版本是这样的:

render "partial", foo: @foo
于 2012-03-22T17:46:04.707 回答