拜托,能帮助我吗?如何从设备中的localhost发送电子邮件。例如,我在开发环境中写作
config.action_mailer.default_url_options = { :host => 'localhost:3000' }
但它不会在我的地址上发送电子邮件。例如。
答案 0 :(得分:3)
您需要设置初始化程序,以便在开发环境中发送电子邮件。
将此配置放在:config / initializers / mail.rb
中ActionMailer::Base.smtp_settings = {
:address => "smtp.gmail.com",
:port => 587,
:domain => "gmail.com",
:user_name => "username",
:password => "password",
:authentication => "plain",
:enable_starttls_auto => true
}
注意:此配置适用于Gmail,如果您不使用Gmail,则需要修改SMTP客户端的设置。
请记住,在将此文件添加到rails应用程序后,您需要重新启动服务器。
还有一个很棒的Railscast剧集可以帮助你here。
答案 1 :(得分:0)
#this works well
add_column :users, :confirmation_token, :string
add_column :users, :confirmed_at, :datetime
add_column :users, :confirmation_sent_at, :datetime
add_column :users, :unconfirmed_email, :string
#But this cannot work !!!
add_column :users, :confirmation_token, :string, :null => false, :default => ''
add_column :users, :confirmed_at, :datetime, :null => false, :default => '1970-01-01'
add_column :users, :confirmation_sent_at, :datetime, :null => false, :default => '1970-01-01'
add_column :users, :unconfirmed_email, :string, :null => false, :default => ''
请参阅此问题:https://github.com/plataformatec/devise/issues/2567
我今天遇到了一个问题,我花了5个小时。 当confirmation_token关系列为空时,Devise的确认电子邮件无效。当列为null时,它运行良好。