Estoy tratando de hacer un render condicional de una plantilla diferente de ActionMailer (Rails 3.1.1). Quiero que la mayoría de los usuarios obtengan la plantilla normal welcome.html.erb
, pero algunos usuarios obtienen la plantilla especial welcome_photographer.html.erb
. Este tipo de cosas trabaja en ActionController:Renderizar vista diferente (plantilla) para ActionMailer
# (in /app/mailers/user_mailer.rb)
def welcome(user)
@user = user
mail(:to => "#{@user.name} <#{@user.email}>", :subject => "Welcome to ...")
render "welcome_photographer" if @user.is_photographer
end
Pero la representación no funciona - todo el mundo tiene el estándar welcome.html.erb
incluso si @user.is_photographer == true
perfecta - gracias – brittohalloran
Sé que esta es una respuesta antigua por ahora, pero la encontré hoy. ¿Debería ': template_name => template' ser': template_name => "template" '? Lo intenté a tu manera y terminé yendo a los documentos que lo muestran como una cadena. – Tass
'plantilla' es una variable que se establece en una cadena en la primera línea. Según si el usuario es fotógrafo o no, 'template' es' 'welcome_photographer" 'o' "welcome" '. –