MailyHerald使用Devise gem设置(错误:/ user处的NoMethodError)

时间:2016-02-02 14:38:32

标签: ruby-on-rails devise sidekiq mailing

我正在尝试使用rails 4应用程序设计MailyHerald。 我按照以下步骤操作: https://github.com/Sology/maily_herald/wiki/Setup-with-'devise'-gem

现在,当我尝试注册新用户时(确认邮件应该通过MailyHerald发送)我收到此错误:

NoMethodError at /user
undefined method `[]' for false:FalseClass

maily_herald (0.9.3) lib/maily_herald.rb

# Gets the Maily logger.
def logger
  unless MailyHerald::Logging.initialized?
    opts = {
      level: options[:verbose] ? Logger::DEBUG : Logger::INFO,
    }
    opts[:target] = options[:logfile] if options[:logfile]
    MailyHerald::Logging.initialize(opts)
  end

有什么想法吗?感谢

修改: 一个小的更新,可能与我得到的错误有关:

当我做的时候

maily_herald paperboy --start

如页面above所示,我得到了

undefined method `merge' for false:FalseClass

编辑2: 好的,我做了一些测试。

我创建了一个新的应用程序,从头开始设计(rails 4.2.5.1和ruby 2.2.4p230)。 现在,当用户注册时,我没有收到任何错误,但没有发送确认电子邮件。

运行后台处理

maily_herald paperboy --start

返回此

[Maily#cli] INFO: Started with options: {:mode=>:paperboy, :action=>:start, :daemon=>true}
You really should set a logfile if you're going to daemonize
/Users/fabbrro/.rvm/gems/ruby-2.2.4@testMailyHerald/gems/maily_herald-0.9.3/lib/maily_herald/cli.rb:200:in `daemonize'
/Users/fabbrro/.rvm/gems/ruby-2.2.4@testMailyHerald/gems/maily_herald-0.9.3/lib/maily_herald/cli.rb:45:in `paperboy'
/Users/fabbrro/.rvm/gems/ruby-2.2.4@testMailyHerald/gems/maily_herald-0.9.3/bin/maily_herald:10:in `<top (required)>'
/Users/fabbrro/.rvm/gems/ruby-2.2.4@testMailyHerald/bin/maily_herald:23:in `load'
/Users/fabbrro/.rvm/gems/ruby-2.2.4@testMailyHerald/bin/maily_herald:23:in `<main>'
/Users/fabbrro/.rvm/gems/ruby-2.2.4@testMailyHerald/bin/ruby_executable_hooks:15:in `eval'
/Users/fabbrro/.rvm/gems/ruby-2.2.4@testMailyHerald/bin/ruby_executable_hooks:15:in `<main>’

为了进一步调查,我还尝试设置sample application。我创建了一些实体(用户)并尝试向他们发送电子邮件(通过mailcatcher)。 到现在为止,即使没有安装设计宝石,我似乎没有运气: 运行后台处理时根本没有消息, 没有错误, 但也没有发送邮件。有人设法成功试用了该应用吗?

1 个答案:

答案 0 :(得分:2)

我刚刚注意到这个问题。你看过我对github的评论吗?

https://github.com/Sology/maily_herald/issues/17#issuecomment-182412069

另外,我检查了我的Procfile并且我正在运行:

web: bundle exec rails s
worker: bundle exec sidekiq -v
paperboy: bundle exec maily_herald paperboy

Sidekiq对于MailyHerald至关重要。我认为它没有在Wiki页面上指定。如果这解决了您的问题,请告诉我。我也会尝试使用您的设置设置新应用程序。我可以查看任何公开回购?

<强>更新

刚创建了新应用:

然后在浏览器中打开mailcatcher和app并注册新用户。你应该看到新添加的邮件发送到调度程序和运行它的sidekiq日志。