Rails 4:将多个参数传递给partial

时间:2013-09-18 13:43:29

标签: ruby-on-rails ruby ruby-on-rails-4

我能够将一个参数从一个视图传递给一个部分,但由于某些原因,当我添加一个参数时,它是未定义的(nil类)。

以下是我在视图中调用partial的方法:

<%= render 'project_form', locals: {project: @project, form_method: 'patch'} %>

这是部分(_project_form.html.erb)的顶部:

<%= logger.debug( @form_method ) %>

在视图中打印“true”,并在日志中记录任何内容(空行)。

为什么不接收第二个参数?我可以调试@project,这是我期望的课程。

更新 根据{{​​3}},您需要稍微修改渲染语法以传递多个参数。

所以我有两个问题:1)变量范围,2)render :partial语法需要显式传递多个局部变量。

1 个答案:

答案 0 :(得分:2)

它是您尝试打印的局部变量。在您的部分而不是@form_method

中尝试此操作
<%= logger.debug( form_method ) %>

我认为以下内容将打印出您的部分内容:

<%= form_method %>