从本地主机设计电子邮件确认
Posted
技术标签:
【中文标题】从本地主机设计电子邮件确认【英文标题】: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 正常工作?
谢谢!
约翰
【问题讨论】:
【参考方案1】:听起来您缺少用户模型的确认字段。
您可以将其与您的 schema.rb 文件关联起来。
【讨论】:
【参考方案2】:您的本地环境迁移了吗?您的用户模型在设计调用中有:confirmable
吗?您的数据库中是否存在 User.confirmed_at(您是否有任何待处理的迁移)?
如果您有异常,您还应该从异常中添加堆栈跟踪。
【讨论】:
啊,你是对的。我跑了 rake db:drop db:create db:migrate 现在工作正常。我会尽可能接受答案。以上是关于从本地主机设计电子邮件确认的主要内容,如果未能解决你的问题,请参考以下文章