2011-11-03 9 views
7

Estamos ejecutando una aplicación Rails 3.0.7 con Passenger standalone + nginx y con ruby ​​1.9.2-p290, y estamos viendo lo más extraño: después de implementar algunas actualizaciones en una plantilla de correo, nuevos correos electrónicos provenientes del aplicación a veces tienen las actualizaciones aplicadas, y algunas veces se está utilizando la plantilla anterior.Plantillas antiguas de ActionMailer en caché?

No puedo encontrar nada sobre las plantillas de ActiomMailer almacenadas en caché en línea, y ejecutar rake tmp:cache:clear tampoco soluciona el problema, fwiw.

¿Alguien ha experimentado alguna vez tal cosa? ¿Hay una solución definitiva para este problema?

gracias,

Jacob

+1

¿Ha reiniciado la aplicación? ¿Estás usando DelayedJob? – Eric

+0

¿El problema ocurre en todos los entornos? –

+1

Tuve el mismo problema, pero olvidé reiniciar DelayedJob. Parece que almacenan en caché las plantillas de correo. – Mark

Respuesta

0

me he encontrado con situaciones similares en nuestra aplicación, y utilizamos Resque.

Si cambio algo con respecto a los anuncios publicitarios (que los trabajadores de Resque manejan), necesito reiniciar los trabajadores.

Matar a los trabajadores y reagruparlos, parece que algunos de ellos pueden tener el viejo entorno cargado y otros no.

0

Estaba teniendo este problema también, aunque no estaba usando Resque para enviar correos. Después de mirar las plantillas ofensivas por un tiempo, me di cuenta de que algunas de mis CSS en línea estaban formateadas incorrectamente (declaraciones incorrectas de la familia de fuentes y el relleno) y que la plantilla puede haber estado ignorando todo lo demás junto a esas declaraciones. Como resultado, parecía que estaba tirando de las plantillas antiguas en lugar de representar las nuevas reglas. No estoy seguro de si esto está documentado en algún lugar ..

Así que, básicamente, era flojo y me costó unas pocas horas del día.

Cuestiones relacionadas