rails 5
,ruby 2.5
我正在尝试一些新的东西。在我看来,这是有道理的,但没有用。我想在我的<form>
和new
视图上放置一个edit
标签,然后调用具有其余形式的局部视图。我正在使用f
传递“实例变量”(正确的术语?):locals
,但是在局部变量中却无法识别。
# new.html.erb
<% @page_title = "New Food Entry" %>
<%= form_for(@food) do |f| %>
<%= render "form", :locals => { :f => f } %>
<% end %>
# _form.html.erb
<table cellpadding="2" cellspacing="0" style="border: 1px solid #369;" summary="Edit or new Food Record">
<tr>
<td><label>Food Name</label></td>
<td><%= f.text_field :food_item, :size => 30 %></td>
</tr>
...
当我加载... / foods / new时,出现此错误:
undefined local variable or method `f' for #<#<Class:0x00007fdb4c036428>:0x00007fdb342a3890
任何提示将不胜感激。
答案 0 :(得分:1)
根据Rails docs。请使用<%= render partial: "form", :locals => { :f => f } %>
或<%= render "form", :f => f %>
语法。