我能够将单个参数从 View 传递到部分 View ,但由于某种原因,当我添加第二个时,它是未定义的(无类)。
这是我在 View 中调用部分的方式:
<%= render 'project_form', locals: {project: @project, form_method: 'patch'} %>
这是部分 (_project_form.html.erb) 的顶部:
<%= logger.debug( @form_method ) %>
这会在 View 中打印“true”,并且不会在日志中记录任何内容(空行)。
为什么它没有收到第二个参数?我可以调试 @project,这是我期望的类。
更新: 根据this question ,您需要稍微修改渲染语法以传递多个参数。
所以我遇到了两个问题:1) 变量范围,2) render :partial
语法需要显式传递多个局部变量。
最佳答案
它是您要打印的局部变量。在你的部分而不是 @form_method
中试试这个:
<%= logger.debug( form_method ) %>
我认为下面将在您的部分打印值(value):
<%= form_method %>
关于ruby-on-rails - rails 4 : passing multiple arguments to partial,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18873892/