0
我真的不知道什麼是錯的。我有一個RoR服務器,我將定期通過電子郵件向用戶發送通知。我打電話Rails代碼目前要做到這一點的方法是:Rails 4.2郵件程序問題 - 無法讓郵件工作
$ bundle exec rails r "ProjectDueMailer.test_email"
這是郵件代碼:
class ProjectDueMailer < ApplicationMailer
default from: '<email>@gmail.com'
def test_email
mail(to: '<email>@gmail.com', subject: "This is a test!")
puts "email sent"
end
end
顯然正確的電子郵件取代<email>
。同樣,配置是:
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :smtp
config.action_mailer.smtp_settings = {
address: 'smtp.gmail.com',
port: 587,
user_name: '<email>@gmail.com',
password: '<password>',
authentication: "plain",
enable_starttls_auto: true }
每當我像這樣運行rails runner,沒有任何反應。它坐了一會兒,然後我得到下一個shell行。如果我改變def test_email
到def self.test_email
,我得到的錯誤:
undefined method 'mail' for ProjectDueMailer:Class
我真的在這裏損失。我有test_email.html | text.erb文件,我使用rails g mailer ProjectDueMailer
生成了郵件程序,所以有ApplicationMailer類。我究竟做錯了什麼?
這是它!立即送貨!現在我有SMTP身份驗證問題,但這完全是另一個問題!謝謝你,先生。 – Bronze