Rails邮件程序预览不适用于规格/邮寄/预览

时间:2016-08-29 10:30:41

标签: ruby-on-rails rspec

我希望能够在浏览器中预览我的电子邮件。

我正在使用Rspec并在规格/邮寄/预览中进行以下预览设置:

# Preview all emails at http://localhost:3000/rails/mailers/employee_mailer
class EmployeeMailerPreview < ActionMailer::Preview

        def welcome
            Notifier.welcome_email(Employee.first)
        end

    end

当我尝试访问它时,我收到以下错误:

AbstractController::ActionNotFound at /rails/mailers/employee_mailer
Mailer preview 'employee_mailer' not found

但是,当我将测试/邮件/预览中的预览代码放入时 它有效。

如何配置我的Rails应用以查找规格/邮寄/预览中的预览?

3 个答案:

答案 0 :(得分:14)

使用

config.action_mailer.preview_path = "#{Rails.root}/spec/mailers/previews"
<{1>}在config/development.rb中定义预览所在的路径。

答案 1 :(得分:1)

由于您使用的是RSpec,因此期望您使用spec文件夹。

是这种情况,我宁愿将文件移到spec/mailers/previews/user_mailer_preview.rb

答案 2 :(得分:1)

对我来说,解决方案是把所有东西都搬进去

myapp/test/mailers/previews/

myapp/spec/mailers/previews/

这样做之后,邮件预览可以通过通常的 URL 访问:

http://localhost:3000/rails/mailers

我找到了此信息 here