2011-04-03 25 views
6

Escribí un correo personalizado que envía un correo electrónico cada vez que un usuario recibe una notificación. por alguna razón, el programa de correo personalizado funciona, pero el programa de diseño incorporado no funciona. No puedo enviar correos electrónicos de confirmaciónConfigurando el dispositivo para enviar correos electrónicos

¿falta algo en mi configuración?

-devise.rb:

config.mailer_sender = "[email protected]" 

-setup_mail.rb:

require "development_mail_interceptor" 

ActionMailer::Base.smtp_settings = { 
    :address    => "smtp.gmail.com", 
    :port     => 587, 
    :domain    => "gmail.com", 
    :user_name   => "usename", 
    :password    => "pass", 
    :authentication  => "plain", 
    :enable_starttls_auto => true 
} 



ActionMailer::Base.perform_deliveries = true 
ActionMailer::Base.raise_delivery_errors = true 
ActionMailer::Base.register_interceptor(DevelopmentMailInterceptor) if Rails.env.development? 
+0

Qué errores/excepciones que están recibiendo? –

+0

Ninguno, el registro de desarrollo escribe que el correo electrónico se envió pero nunca lo recibo – Gady

+0

¿Dónde termina entonces? ¿Alguna vez el sistema ha hablado con 'smtp.gmail.com' a través de la red? ¿Se puede aumentar el nivel de registro de errores de alguna manera? –

Respuesta

4

Creo que mirar en

config/inicializadores/devise.rb

hará t que truco para usted:

config.mailer = "Idear :: Mailer"

puede descomentar él!

1
This can be helpful. After r&D, the final complete text is below: 

# ActionMailer Config in development/production rb file 
    config.action_mailer.default_url_options = { :host => 'localhost:3000' } 
    config.action_mailer.delivery_method = :smtp 
    # change to true to allow email to be sent during development 
    config.action_mailer.perform_deliveries = true 
    config.action_mailer.raise_delivery_errors = true 
    config.action_mailer.default :charset => "utf-8" 

    config.action_mailer.smtp_settings = { 
    address: "smtp.gmail.com", 
    port: 587, 
    domain: "mail.google.com",####important 
    authentication: "plain", 
    enable_starttls_auto: true, 
    user_name: ENV["GMAIL_USERNAME"], 
    password: ENV["GMAIL_PASSWORD"] 
    } 
0

Detecto un problema hoy y paso 5 horas en él. El correo electrónico de confirmación de Devise no puede funcionar cuando las columnas relacionales de confirmación_conocimiento están en blanco. Bueno, cuando las columnas son nulas, funciona bien.

#this works well 
add_column :users, :confirmation_token, :string 
add_column :users, :confirmed_at, :datetime 
add_column :users, :confirmation_sent_at, :datetime 
add_column :users, :unconfirmed_email, :string 

#But this cannot work !!! 
add_column :users, :confirmation_token, :string, :null => false, :default => '' 
add_column :users, :confirmed_at, :datetime, :null => false, :default => '1970-01-01' 
add_column :users, :confirmation_sent_at, :datetime, :null => false, :default => '1970-01-01' 
add_column :users, :unconfirmed_email, :string, :null => false, :default => '' 

esperanza ayuda U cuando detectar este problema por igual. ~

Cuestiones relacionadas