【问题标题】:migration fails on heroku due to activeadmin mailer由于 activeadmin 邮件程序,heroku 上的迁移失败
【发布时间】:2012-02-17 14:55:27
【问题描述】:

我正在向 heroku 部署一个应用程序,该应用程序在 rails 3.2 上,并且我安装了活动的管理 gem。

当我运行 rake db:migrate 时,由于以下错误而失败

    ==  DeviseCreateAdminUsers: migrating =========================================
-- create_table(:admin_users)
   -> 0.0823s

Sent mail to admin@example.com (3228ms)
rake aborted!
An error has occurred, this and all later migrations canceled:

Connection refused - connect(2)

想知道我需要做什么来解决这个问题。似乎 Devise gem 或 ActiveAdmin 需要在迁移过程中发送邮件,因为如果失败则不能。

【问题讨论】:

    标签: ruby-on-rails-3 heroku activeadmin


    【解决方案1】:

    尝试安装 Sendgrid 插件:

    heroku addons:add sendgrid:starter
    

    如果您要部署到 Aspen 或 Bamboo stacks,它应该可以立即工作。如果您使用的是 Cedar 堆栈,则需要添加一个额外的初始化程序:

    #config/initializers/mail.rb
    
    ActionMailer::Base.smtp_settings = {
      :address        => 'smtp.sendgrid.net',
      :port           => '587',
      :authentication => :plain,
      :user_name      => ENV['SENDGRID_USERNAME'],
      :password       => ENV['SENDGRID_PASSWORD'],
      :domain         => 'heroku.com'
    }
    ActionMailer::Base.delivery_method = :smtp
    

    取自:http://devcenter.heroku.com/articles/sendgrid

    【讨论】:

    • 我正在使用 cedar,所以我想我只需要查找文档即可进行设置?谢谢你的提示。试一试后会不会发这个帖子。
    • 添加发送网格修复了问题
    【解决方案2】:

    这让我有点困惑:

    Connection refused - connect(2)
    

    你有你的邮件设置吗?您使用的是 SendGrid 还是类似的?请记住,Heroku 不直接提供电子邮件服务。

    http://devcenter.heroku.com/articles/smtp

    【讨论】:

    • 是的,这也让我感到困惑......仍然需要解决一些问题,看看是否需要设置 SendGrid
    猜你喜欢
    • 2015-01-13
    • 1970-01-01
    • 2011-06-29
    • 1970-01-01
    • 2011-08-05
    • 1970-01-01
    • 1970-01-01
    • 2022-10-23
    • 2015-06-26
    相关资源
    最近更新 更多