rails 部分不处理本地人

rails partial not processing locals

以下视图以 consistent with the Rails guides:

的方式调用局部变量并为其声明局部变量
<% @wines_for_winetype.each_with_index do |wine, index| %>
  <%= render 'price_table', locals: {wine: wine} %>

但这会产生错误

undefined local variable or method 'wine' for #<#:0x00007fba1fb97298> Did you mean? @wine @wines

但在开发模式下,实时 shell 以下内容: 证明当地人存在。

为什么它们没有按照预期的语法在部分视图中处理?我该如何解决?

您错过了 partial 关键字:

<% @wines_for_winetype.each_with_index do |wine, index| %>
  <%= render partial: 'price_table', locals: {wine: wine} %>

@mrzasa 是对的。如果要省略 partial 关键字,则也需要省略 locals 关键字。

<%= render 'price_table', wine: wine %>