【问题标题】:Devise email confirmation from localhost从本地主机设计电子邮件确认
【发布时间】:2011-12-31 14:06:39
【问题描述】:

我可以在 Heroku 上的部署中收到注册确认电子邮件,但是当我尝试在 localhost:3000 上注册时,我收到以下错误:

undefined local variable or method `confirmed_at' for #<User:0xb67a1ff0>

在我的 config/environments/production.rb 文件中,我有:

config.action_mailer.default_url_options = { :host => 'xxxx.com' }

我有一个格式如下的初始化文件:

ActionMailer::Base.smtp_settings = {
   :user_name => "xxxx@heroku.com",
   :password => "xxxxxx",
   :domain => "xxxx.com",
   :address => "smtp.sendgrid.net",
   :port => "xxx",
   :authentication => :plain,
   :enable_starttls_auto => true
};

我需要哪些设置才能使 localhost 正常工作?

谢谢!

约翰

【问题讨论】:

    标签: ruby-on-rails devise localhost actionmailer


    【解决方案1】:

    听起来您缺少用户模型的确认字段。

    您可以将其与您的 schema.rb 文件关联起来。

    【讨论】:

      【解决方案2】:

      您的本地环境迁移了吗?您的用户模型在设计调用中有:confirmable 吗?您的数据库中是否存在 User.confirmed_at(您是否有任何待处理的迁移)?

      如果您有异常,您还应该从异常中添加堆栈跟踪。

      【讨论】:

      • 啊,你是对的。我跑了 rake db:drop db:create db:migrate 现在工作正常。我会尽可能接受答案。
      猜你喜欢
      • 1970-01-01
      • 2017-07-16
      • 2011-08-22
      • 1970-01-01
      • 2016-07-22
      • 1970-01-01
      相关资源
      最近更新 更多