首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ActionMailer外部Rails

ActionMailer外部Rails
EN

Stack Overflow用户
提问于 2018-10-20 01:30:17
回答 1查看 52关注 0票数 0

我试图在Rails之外使用ActionMailer发送电子邮件,但遇到了Missing template错误。我有一个这样的文件夹结构。

代码语言:javascript
复制
mailer/app/mailers/welcome_email.rb
mailer/app/views/welcome_email/welcome.html.erb
mailer/mailer.rb

我有一个配置文件,其中有下面这一行:

邮件程序/初始化程序/config.rb

代码语言:javascript
复制
ActionMailer::Base.view_paths = File.expand_path('../../app/views/', __FILE__)

(老实说,我不明白为什么需要添加这个额外的'../',因为路径是‘上一个文件夹’,然后是'/app/views‘。如果我不这样做,它会找到'/initializers/app/views/')。

代码语言:javascript
复制
File.expand_path('../../app/views/', __FILE__)

返回看起来不错的"/home/jedrek/workspace/rubysamples/mailer/app/views"。然后,ActionMailer应该会在那里找到welcome_email/welcome.html.erb模板,但是当我运行mailer.rb时,我得到一个错误

代码语言:javascript
复制
Missing template welcome_email/welcome
Searched in: (ActionView::MissingTemplate)
  * "/home/jedrek/workspace/rubysamples/mailer/app/views"

为什么它找不到/app/views/welcome_email/welcome.html.erb中的文件?我做错了什么?

EN

回答 1

Stack Overflow用户

发布于 2018-10-20 03:19:51

将views文件夹中的welcome_email目录重命名为welcome_email_mailer,这样就可以了

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52897309

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档