我有一个orders控制器,在我的new.html.haml controller视图中,我正试图将_for m部分呈现为address
订购new.html.haml
= render "/addresses/form"
地址:form.html.haml
= form_for @address do |f|
- if @address.errors.any?
#error_explanation
%h2= "#{pluralize(@address.errors.count, "error")} prohibited this address from being saved:"
%ul
- @address.errors.full_messages.each do |msg|
%li= msg
.field
# All the form fields
.actions
= f.submit 'Save'
我发现了这个错误
First argument in form cannot contain nil or be empty
最好的解决办法是什么?我想创建一个部分只是为了这个,但我不认为创建另一个形式的部分将符合干。
提前多谢了
最佳答案
这个错误的原因是@address
是nil
要修复此问题,需要在控制器中实例化
# orders_controller.rb
def new
@address = Address.new
end
def edit
@address = Address.find params[:id]
end
关于ruby-on-rails - 在不同的 Controller 中渲染部分,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/24871224/