Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby Rails 4.2-Sidekiq在开发中不发送电子邮件_Ruby_Ruby On Rails 4_Actionmailer_Sidekiq_Rails Activejob - Fatal编程技术网

Ruby Rails 4.2-Sidekiq在开发中不发送电子邮件

Ruby Rails 4.2-Sidekiq在开发中不发送电子邮件,ruby,ruby-on-rails-4,actionmailer,sidekiq,rails-activejob,Ruby,Ruby On Rails 4,Actionmailer,Sidekiq,Rails Activejob,我有一个rails应用程序,我有一个发送大量电子邮件的方法。我想异步执行此操作。为了做到这一点,我试着使用Sidekiq,但我无法让它正常工作-它不发送任何电子邮件 发送电子邮件以前是有效的,所以我确信我的电子邮件设置是正确的 在我的gemfile中,我有: gem 'sidekiq' 我已经运行了捆绑安装。我还按照上的说明安装了redis 我使用以下命令启动了sidekiq:bundle exec sidekiq,这导致了下图所示的结果: 在application.rb中,我有以下内容:

我有一个rails应用程序,我有一个发送大量电子邮件的方法。我想异步执行此操作
。为了做到这一点,我试着使用
Sidekiq
,但我无法让它正常工作-它不发送任何电子邮件

发送电子邮件以前是有效的,所以我确信我的电子邮件设置是正确的

在我的
gemfile
中,我有:

gem 'sidekiq'
我已经运行了
捆绑安装
。我还按照上的说明安装了redis

我使用以下命令启动了
sidekiq
bundle exec sidekiq
,这导致了下图所示的结果:

application.rb
中,我有以下内容:

config.active_job.queue_adapter = :sidekiq
我试着像这样发送电子邮件:

Mailer.deliver_new_competition_notification(member.user,   @competition).deliver_later!
我没有收到任何错误,但电子邮件从未发送过


那么,我错过了什么吗?

你需要启动sidekiq和邮件队列,它才能接受这些工作:

bundle exec sidekiq -q default -q mailers

Sidekiq Wiki介绍了中的场景。

您还可以修改config/Sidekiq.yml:

---
:concurrency: 25
:pidfile: ./tmp/pids/sidekiq.pid
:logfile: ./log/sidekiq.log
:queues:
  - default
  - mailers

然后运行
sidekiq-C config/sidekiq.yml

是否包含proc文件?@sansarp不,我没有。安东尼下面的回答足以让它起作用。但是我对Procfiles很好奇,你能详细说明我如何包含ad Procfile,它应该包含什么以及为什么吗?运行sidekiq-C config/sidekiq.yml帮助了我-谢谢!不幸的是,也不起作用。不幸的是,不起作用。