Gema ARMailer, solo encola un mail y MissingTemplate en prod


#1

Buenas,

he estado itentando usar ARMailer para gestionar el correo enviado desde
una aplicación mediante una cola, concretamente he seguido este howto
que encontre por la web [1], además de la documentación de la gema y me
he encontrado con dos problemas.

El primero de ellos es que una vez esta todo funcionando, solo mete en
la cola un correo, y para que meta en la cola otro correo tengo que
reiniciar el servidor.

El segundo problema es, estando en entorno de produccion, al ejectutarse
la función que envia el email sale el siguiente mensaje de error:
ActionView::MissingTemplate (Missing template postoffice/welcome.erb in
view

Una curiosidad que encontre es que estando en entorno de desarrollo
pongo esto:
require ‘action_mailer/ar_mailer’

ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.default_charset = ‘utf-8’
ActionMailer::Base.delivery_method = :activerecord

en config/environment.rb, y cuando paso a entorno de producción tengo
que ponerlo en config/environments/production.rb o sino no lo tiene en
cuenta y cualquier cosa que haga como por ejemplo un rake db:migrate
fallará. ¿por qué sucede esto?

¿Alguién sabe como se solucionan estos problemas o tiene alguna pista?

Gracias.

[1]
http://www.ameravant.com/posts/sending-tons-of-emails-in-ruby-on-rails-with-ar_mailer


#2

He seguido trasteando con esto y probe a utilizar otra versión de rails,
inicialmente estaba con Rails 2.2.2, y ahora estoy probando con Rails
2.1.1 y he avanzado un poco.

Ahora, en entorno de desarrollo, ya mete en la cola todos los emails y
funciona OK! o eso parece, pero en entorno de produccion no sucede lo
mismo, cuando intento ejecutar el metodo que envia el email se produce
el siguiente error:

ActionView::TemplateFinder::InvalidViewPath in
RegistrationController#send_welcome_email

Unprocessed view path found: nil. Set your view paths with
#append_view_path, #prepend_view_path, or #view_paths=.

Buscando por la web encontré que este error se producía por problemas
con el plugin exception_notificacion pero no lo estoy usando.

Además añadí la siguiente linea a config/environments/production.rb
obteniendo el mismo resultado:

ActionMailer::Base.template_root = “templates_path”

Necesito ayuda.

Ancor C. wrote:

Buenas,

he estado itentando usar ARMailer para gestionar el correo enviado desde
una aplicación mediante una cola, concretamente he seguido este howto
que encontre por la web [1], además de la documentación de la gema y me
he encontrado con dos problemas.

El primero de ellos es que una vez esta todo funcionando, solo mete en
la cola un correo, y para que meta en la cola otro correo tengo que
reiniciar el servidor.

El segundo problema es, estando en entorno de produccion, al ejectutarse
la función que envia el email sale el siguiente mensaje de error:
ActionView::MissingTemplate (Missing template postoffice/welcome.erb in
view

Una curiosidad que encontre es que estando en entorno de desarrollo
pongo esto:
require ‘action_mailer/ar_mailer’

ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.default_charset = ‘utf-8’
ActionMailer::Base.delivery_method = :activerecord

en config/environment.rb, y cuando paso a entorno de producción tengo
que ponerlo en config/environments/production.rb o sino no lo tiene en
cuenta y cualquier cosa que haga como por ejemplo un rake db:migrate
fallará. ¿por qué sucede esto?

¿Alguién sabe como se solucionan estos problemas o tiene alguna pista?

Gracias.

[1]
http://www.ameravant.com/posts/sending-tons-of-emails-in-ruby-on-rails-with-ar_mailer


#3

Finalmente he dado con el problema, al añadir esto [*] a
config/environments/production.rb para que medio funcionase con Rails
2.2.2 dejaba de hacerlo en Rails 2.1.1, simplemente lo eliminé.

Ya esta todo funcionando y doy el thread por cerrado.

Saludos y Gracias a todos.

[*]
require ‘action_mailer/ar_mailer’
ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.default_charset = ‘utf-8’
ActionMailer::Base.delivery_method = :activerecord

Ancor C. wrote:

He seguido trasteando con esto y probe a utilizar otra versión de rails,
inicialmente estaba con Rails 2.2.2, y ahora estoy probando con Rails
2.1.1 y he avanzado un poco.

Ahora, en entorno de desarrollo, ya mete en la cola todos los emails y
funciona OK! o eso parece, pero en entorno de produccion no sucede lo
mismo, cuando intento ejecutar el metodo que envia el email se produce
el siguiente error:

ActionView::TemplateFinder::InvalidViewPath in
RegistrationController#send_welcome_email

Unprocessed view path found: nil. Set your view paths with
#append_view_path, #prepend_view_path, or #view_paths=.

Buscando por la web encontré que este error se producía por problemas
con el plugin exception_notificacion pero no lo estoy usando.

Además añadí la siguiente linea a config/environments/production.rb
obteniendo el mismo resultado:

ActionMailer::Base.template_root = “templates_path”

Necesito ayuda.

Ancor C. wrote:

Buenas,

he estado itentando usar ARMailer para gestionar el correo enviado desde
una aplicación mediante una cola, concretamente he seguido este howto
que encontre por la web [1], además de la documentación de la gema y me
he encontrado con dos problemas.

El primero de ellos es que una vez esta todo funcionando, solo mete en
la cola un correo, y para que meta en la cola otro correo tengo que
reiniciar el servidor.

El segundo problema es, estando en entorno de produccion, al ejectutarse
la función que envia el email sale el siguiente mensaje de error:
ActionView::MissingTemplate (Missing template postoffice/welcome.erb in
view

Una curiosidad que encontre es que estando en entorno de desarrollo
pongo esto:
require ‘action_mailer/ar_mailer’

ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.default_charset = ‘utf-8’
ActionMailer::Base.delivery_method = :activerecord

en config/environment.rb, y cuando paso a entorno de producción tengo
que ponerlo en config/environments/production.rb o sino no lo tiene en
cuenta y cualquier cosa que haga como por ejemplo un rake db:migrate
fallará. ¿por qué sucede esto?

¿Alguién sabe como se solucionan estos problemas o tiene alguna pista?

Gracias.

[1]
http://www.ameravant.com/posts/sending-tons-of-emails-in-ruby-on-rails-with-ar_mailer