叫我的控制器爲張貼我有公告時這樣的:Rails的未定義的方法在控制器
@master_settings = load_master_settings(Rails.root)
BulletinMailer.bulletin_email(params[:bulletin][:attachment].path, @master.get_alias_email).deliver
主對象從Datasources.xml文件中設置,並在配置加載程序文件它將它所使用:
doc.elements.each("DEFINITIONS/MAILGUN_THINGS") {|element|
master.set_alias_email(element.attributes["ALIAS_EMAIL"])
}
然後,一個application_helper.rb I內有這些方法來設置主對象的屬性:
def set_alias_email(val)
@alias_email = val
end
def get_alias_email
@alias_email
end
當我嘗試發送郵件並將別名電子郵件直接放入bulletin_mailer.rb文件時,它可以正常工作,但是當我嘗試將調用傳遞給主對象的alias_email屬性時,郵件發送但未到達我的收件箱向我表明某些內容不被存儲或正確調用。
我得到的錯誤是這樣的:
未定義的方法`get_alias_email」的零:NilClass在這行:
BulletinMailer.bulletin_email(params[:bulletin][:attachment].path, @master.get_alias_email).deliver
這是怎麼回事呢?
您已經創建了一個變量'@ master_settings',但是使用了另一個-' @ master' – Santhosh