在同一个动作中渲染2个部分,或者替代它

时间:2012-06-18 12:43:11

标签: ruby-on-rails ruby-on-rails-3

我有一个带有各种按钮的表单和2个选择如下:

|button1| |button2| |button3| |button4| |button5|

text fields
check boxes
etc

|select1|
somethings in the middle
|select2|

当我点击按钮时,会向控制器发出ajax调用并填充2个集合 如何刷新2个选项? 我已经将选择放在2个不同的部分中,但是没有双重渲染这样的东西。我试图将不同的集合变量传递给相同的部分,如下所示:

render :partial => "list", :object => @list1, :as => list
render :partial => "list", :object => @list2, :as => list

它也没有奏效...... 任何sugestions?

1 个答案:

答案 0 :(得分:0)

在这种情况下,您可能只想要一个部分。例如,将其称为_main_lists(或者你有什么)。您的控制器将创建@list1@list2个集合,并将其传递给main_partialmain_partial会简单地呈现您的个人列表,与您的问题完全相同。

你的AJAX请求现在会返回两个列表,因为它会返回一个名为2 partials的部分。

您拥有的另一个选择是将列表作为JSON返回,然后再使用它。