ruby-on-rails - Rails Sidekiq - 邮件类无法识别

标签 ruby-on-rails redis sidekiq

我将 sidekiq 与 rails 5 一起用于后台作业,我也想以这种方式发送电子邮件。在我的 gemfile 上进行以下设置:

gem 'redis-rails'
gem 'sidekiq'
gem 'sinatra', github: 'sinatra/sinatra', require: false
gem 'devise-async'

我还设置了初始值设定项:

Devise::Async.backend = :sidekiq

然后像这样调用我的邮件程序方法:

Mailer.delay.signup_email(@user, @password)

在 sidekiq 日志上,我收到错误

2016-10-26T19:02:09.473Z 17854 TID-ww0i8 WARN: ArgumentError: undefined class/module Mailer

我的 mailer.rb 文件位于 app/mailers 文件夹中。我重新启动了我的 rails 服务器、redis 服务器、sidekiq,但我仍然收到错误。任何人都知道如何解决它?谢谢!

最佳答案

Mailer 是一个非常糟糕的类名,因此可能无法自动加载。给它一个更具体的名称,UserMailer 或类似的名称,并将其移动到 user_mailer.rb。

关于ruby-on-rails - Rails Sidekiq - 邮件类无法识别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40270330/

相关文章:

ruby sidekiq `require' : cannot load such file -- pg (LoadError)

ruby-on-rails - SidekiqVS。兔子MQ

ruby-on-rails - Rails - 从 Controller 运行 rake 任务或新线程?

mysql - Rails Mysql 结果 - fetch_fields 方法

ruby-on-rails - Omniauth-Facebook : How to get Long-Lived Access Tokens?

具有持久存储功能的 Redis 流

javascript - 为什么 jquery 对这个选择器很生气?

memcached - 可扩展对象的键值存储

azure - 在 .net Core 中使用 Redis 进行作业和消息队列

ruby-on-rails - rails 上的 Redis 发布/订阅