0

这是我正在尝试做的事情:

    page.replace_html('manage_categories_list', :partial => "/categories/categories", :layout => :modal)

但是,我在上面的代码中得到了这个错误:

NoMethodError (undefined method `include?' for :modal:Symbol):

我想要做的是为模态对话框窗口提供模板 HTML。并使用任何部分设置该模式的标题(h2)和正文(div)。=\

modal.html.erb:

<div class="fixed_modal">
    <div class="modal_header">
        <%= yield :header %>
    </div>
    <div class="modal_body">
        <%= yield %>
    </div>
</div>

我试图渲染的部分:

<% content_for :header do %>
    Manage Categories
<% end %>

....休息无关紧要,因为它只是进入产量

我正在使用铁路 2.3.14

4

2 回答 2

1

:layout 的参数不能是符号

:layout=>'modal'

这假设您在 app/views/layouts/modal.html.erb 中有一个布局

于 2012-05-02T18:26:48.923 回答
1

很可能,您需要将其更改为..., :layout => 'modal'

page.replace_html('manage_categories_list', :partial => "/categories/categories", :layout => :modal)

#replace_html 方法接受像#render 这样的选项。对于 :layout 选项,您需要传递true或字符串布局文件名(请参阅#render 的文档)。

布局参数将是 app/views/layouts/xyz.html.erb 中文件名的“xyz”部分。

于 2012-05-02T18:30:52.810 回答