2012-04-13 15 views
5

Desidero aggiungere un allegato all'e-mail inviata per reimpostare la password mediante devise (immagine logo) e inoltre desidero utilizzare la locale dell'utente per localizzare il testo dell'email. Qualcuno può aiutarmi e dirmi cosa scavalcare per fare questo?Devise modello di posta per reimpostare la password

risposta

6

È necessario aggiungere l'immagine del logo come allegato.

Per farlo, seguire le istruzioni nel link per ignorare il Devise di default :: Mailer: https://github.com/plataformatec/devise/wiki/How-To:-Use-custom-mailer

Quindi, aggiungere l'allegato utilizzando attachments.inline['logo.png']=:

def reset_password_instructions(record, opts={}) 
    attachments.inline['logo.png'] = File.read('app/assets/images/logo.png') 
    super(record, opts) 
end 

E nella vista si può utilizzare attachments['logo.png'].url:

<%= image_tag(attachments['logo.png'].url, alt: 'Logo') %> 
2

basta eseguire rails generate devise:views e modificare modello nella app/views/devise/mailer/reset_password_instructions.html.erb

+0

Ma non riesco ad aggiungere l'immagine in questo modo. Ricevo solo link errati, quando cerco di farlo. Devo aggiungere un allegato al messaggio: come posso farlo? –

0

sto usando ideare 4.3 per le rotaie 5 app. È necessario un argomento aggiuntivo.

def reset_password_instructions(record, token, opts={}) 
    attachments.inline['logo.png'] = File.read("#{Rails.root}/app/assets/images/logo.png") 
    super(record, token, opts) 
end 
Problemi correlati