Я пытаюсь отправить письмо с помощью ActionMailer за пределами Rails и застрял в Missing template
ошибке.У меня есть структура папок, подобная этой.
mailer/app/mailers/welcome_email.rb
mailer/app/views/welcome_email/welcome.html.erb
mailer/mailer.rb
У меня есть файл конфигурации, где у меня есть эта строка:
mailer / initializers / config.rb
ActionMailer::Base.view_paths = File.expand_path('../../app/views/', __FILE__)
(Я не понимаю, почему мне нужно добавить этот дополнительный «../», если честно, потому что путь «одна папка вверх», а затем «/ app / views». Если я не делаю этого, он находит'/initializers/app/views/').
File.expand_path('../../app/views/', __FILE__)
возвращает "/home/jedrek/workspace/rubysamples/mailer/app/views"
, что выглядит нормально.Затем ActionMailer должен найти там шаблон welcome_email/welcome.html.erb
, но когда я запускаю mailer.rb
, я получаю сообщение об ошибке
Missing template welcome_email/welcome
Searched in: (ActionView::MissingTemplate)
* "/home/jedrek/workspace/rubysamples/mailer/app/views"
Почему он не находит файл в /app/views/welcome_email/welcome.html.erb
?Что я делаю не так?