我能够将一个参数从一个视图传递给一个部分,但由于某些原因,当我添加一个参数时,它是未定义的(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
语法需要显式传递多个局部变量。
答案 0 :(得分:2)
它是您尝试打印的局部变量。在您的部分而不是@form_method
:
<%= logger.debug( form_method ) %>
我认为以下内容将打印出您的部分内容:
<%= form_method %>