這裏是我的索引方法,它試圖訪問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