En Rails, quand on crée les templates d’emails, il peut être intéressant d’utiliser les « URL Helpers » plutôt que d’écrire manuellement ces URL dans la vue (surtout que les URL en production diffèrent de celles de développement).
Par exemple, si on a un contrôleur articles
avec une action index
, il existe un helper articles_url
qui permet d’accéder à cette action. Ainsi, si on veut faire une ancre vers cette action, on écrira :
link_to "Liste des articles", articles_url |
plutôt que :
link_to "Liste des articles", "https://mon-url.com/articles" |
pour ne pas avoir à modifier l’url https://mon-url.com
à chaque fois qu’on passe de développement à production.
Pour utiliser ces URL Helpers dans les vues des emails, l’application doit connaitre le nom de domaine qui l’héberge. Pour cela, il faut ajouter aux fichiers de config d’environnements :
# dans config/environments/*.rb config.action_mailer.default_url_options = { host: "https://mon-url.com" } |