如果重置链接已过期,则应将用户重定向到root_url,但Rails会执行类似render :nothing => true
的操作,只需空页。
def edit_user_by_reset
@user = User.find_by_password_reset_token(params[:reset_token])
respond_to do |format|
if @user && @user.password_link_sent_at<2.hours.ago
format.html
else
redirect_to root_url
end
end
end
答案 0 :(得分:1)
正确的方式:
def edit_user_by_reset
@user = User.find_by_password_reset_token(params[:reset_token])
respond_to do |format|
if @user && @user.password_link_sent_at<2.hours.ago
format.html
else
format.html {redirect_to root_url}
end
end
end
如果您使用的是respond_to,则需要提供格式,否则无效。