Ruby on rails Rails 4:将多个参数传递给partial
我能够将单个参数从视图传递到分部,但由于某些原因,当我添加第二个参数时,它是未定义的(nil类) 以下是我如何在视图中调用分部:Ruby on rails Rails 4:将多个参数传递给partial,ruby-on-rails,ruby,ruby-on-rails-4,Ruby On Rails,Ruby,Ruby On Rails 4,我能够将单个参数从视图传递到分部,但由于某些原因,当我添加第二个参数时,它是未定义的(nil类) 以下是我如何在视图中调用分部: <%= render 'project_form', locals: {project: @project, form_method: 'patch'} %> 下面是部分(_project_form.html.erb)的顶部: 这将在视图中打印“true”,并在日志中不记录任何内容(空行) 为什么它不接受第二个论点?我可以调试@project,这
<%= render 'project_form', locals: {project: @project, form_method: 'patch'} %>
下面是部分(_project_form.html.erb)的顶部:
这将在视图中打印“true”,并在日志中不记录任何内容(空行)
为什么它不接受第二个论点?我可以调试@project,这就是我期望的类
更新:
根据,需要稍微修改渲染语法以传递多个参数
因此,我遇到了两个问题:1)变量范围,2)呈现:部分语法需要显式才能传递多个局部变量。这是您试图打印的局部变量。在分部而不是
@form_方法中尝试此方法
:
<%= logger.debug( form_method ) %>
我认为下面将在您的部分中打印值:
<%= form_method %>
如果@project正在工作,则可能意味着您甚至不需要传递它(因为它是一个实例变量,并且已经可用),谢谢。这似乎奏效了。你能帮我理解为什么要定义@project吗?实例变量的作用域是否自动应用于部分?是的,@project作用域将自动应用于您将渲染到视图中的所有部分。
<%= form_method %>