我有一个问题要让我的部分工作。
我想通过局部变量将对象传递给部分,但我得到了
undefined method `model_name' for NilClass:Class
一直出错。但是该变量被传递了,因为我可以使用 .to_yaml 在部分中调用它,这为我提供了所有变量属性。
但是当我尝试在 form_for 中使用它时,我得到了那个错误。
也许它与我的数据库查询有关。因为当我尝试用另一个局部变量调用它时没有错误。但是我的查询应该产生一个对象,还是我错了?
这是我的 show.html.erb:
<%= @partneroffer = Partneroffer.where(:partner_id => @partner.id, :yearname_id => year.id).first %>
<%= render :partial => "form2", :locals => { :partneroffer => @partneroffer } %>
这是我的部分(_form2.html.erb):
<%= form_for partneroffer , :html => { :class => 'form-horizontal' } do |f| %>
<%= f.label :partnerstatus_id, :class => 'control-label' %>
<%= f.collection_select(:partnerstatus_id, Partnerstatus.all, :id, :name) %>
<%= f.submit nil, :class => 'btn btn-primary' %>
<%= link_to t('.cancel', :default => t("helpers.links.cancel")),
partner_year_terms_path, :class => 'btn' %>
<% end %>