我正在构建一个具有帐户激活功能的Web应用程序。我遵循Michael Hartl ROR教程,我没有收到任何帐户激活邮件到我的收件箱。我试图在网上搜索如何验证是否发送了一封电子邮件。就像应该有一个我们配置为发送电子邮件的SMTP服务器?没有找到有用的东西。有人可以帮忙吗?如何验证是否在Ruby on Rails Web应用程序中发送帐户激活电子邮件
我account_activations_controller.rb
class AccountActivationsController < ApplicationController
def edit
user = User.find_by(email: params[:email])
if user && !user.activated? && user.authenticated?(:activation, params[:id])
user.activate
log_in user
flash[:success] = "Account activated!"
redirect_to user
else
flash[:danger] = "Invalid activation link"
redirect_to root_url
end
end
end
User_mailer.rb
class UserMailer < ApplicationMailer
def account_activation(user)
@user = user
mail to: user.email, subject: "Account activation"
end
end
application_mailer.rb
class ApplicationMailer < ActionMailer::Base
default from: "[email protected]"
layout 'mailer'
end
development.rb
config.action_mailer.raise_delivery_errors = true
config.action_mailer.raise_delivery_errors = true
config.action_mailer.delivery_method = :test
host = 'localhost:3000'
config.action_mailer.default_url_options = { :host=> host }
你需要激活帐号或配置发送电子邮件? – 2015-03-13 14:45:33
您应该添加一些关于您如何发送电子邮件的详细信息,而不是假设每个人都熟悉教程。任何电子邮件发送方法都需要您执行一些配置才能使其工作。你做到了吗? – 2015-03-13 14:56:21
@MaxWilliams对不起,我已经更新了我的配置详细问题 – Sandeep 2015-03-13 15:13:51