这里是我的索引方法,它试图访问2个不同的模型,即,会议&电子邮件:如何在单个控制器中访问多个模型,Ruby on Rails?
def index
user_session = Session.find_by_user_id(user_id)
if !user_session.blank?
if setting_orig = GlobalSetting.find_by_settings_session_id(user_session.id)
@setting = setting_orig.dup
end
else
@setting = GlobalSetting.first.dup
end
末
但是,当我尝试创建这种形式:
<%= form_for(@setting) do |f| %>
<%= f.text_field :username %>
<%= f.password_field :password %>
<%= f.submit "Submit" %>
我显示了这个错误,未定义的方法'model_name'为NilClass:Class。如何使其工作,任何建议?
查看堆栈跟踪中的行号,找出代码中错误来自哪里。看起来@setting可能是零,因为form_for必须检查它才能找出model_name。 – Unixmonkey
我认为它很困惑,因为我们正在访问2个模型,当我评论user_session = Session.find_by_user_id(user_id)这一行,它工作正常 – Raul