嗨,那裏有輝煌的頭腦,我試圖運行這段代碼時遇到了這個問題。無法弄清楚。希望有人能幫忙。未初始化的常量Mail :: Ruby19
這是爲「忘記密碼」重置郵件。
編輯:我曾嘗試重新啓動應用程序幾次。這不是造成問題的原因。
用戶模型:
validations up here...
def generate_token(column)
begin
self[column] = SecureRandom.urlsafe_base64
end while User.exists?(column => self[column])
end
def send_password_reset
generate_token(:password_reset_token)
self.password_reset_sent_at = Time.zone.now
save!
UserMailer.deliver_password_reset(self)
end
密碼重置控制器:
def create
user = User.find_by_email(params[:email])
user.send_password_reset if user
redirect_to signin_path, :notice => "Email sent with instructions."
end
用戶郵件收發器:
class UserMailer < ActionMailer::Base
default from: "[email protected]"
def password_reset(user)
@user = user
mail(:to => user.email, :subject => "Eventalist - Password Reset.")
end
end
錯誤:
uninitialized constant Mail::Ruby19
app/mailers/user_mailer.rb:1:in `<top (required)>'
app/models/user.rb:19:in `send_password_reset'
app/controllers/password_resets_controller.rb:7:in `create'
This error occurred while loading the following files:
mail
任何幫助表示讚賞。
非常感謝
'app/mailers/user_mailer.rb'的第一行是什麼?從錯誤消息看來,它似乎是一個'require'語句,無法加載指定的文件。 –
線1級UserMailer <::的ActionMailer基地 2號線從默認:「[email protected]」 –
能否請您編輯的問題,包括完整的'應用程序/郵寄/ user_mailer.rb'文件好嗎?或者至少在前幾行? –