为了新的Web应用程序,我需要在注册页面(仅管理员可以访问)上只有一个电子邮件字段。
问题是我完全不懂Rails,所以即使像这样的基本东西对我来说也很困难...
我使用Railscast #270创建了我的认证,其中使用了has_secure_password方法。目前,除了我不需要所有这些废话之外,一切都很顺利... 我还想使用Action Mailer将生成的密码发送到他的电子邮件地址。一个hex(8)密码会很完美(我看过SecureRandom但它似乎已被弃用)。
Users_Controller:
class UsersController < ApplicationController
skip_before_filter :is_connected?, :only => [:new, :create]
def new
@user = User.new
end
def create
@user = User.new(params[:user])
if @user.save
# Tell the Mailer to send a welcome Email after save
Mailer.confirm_email(@user).deliver
redirect_to root_url, :notice => "Signed up!"
else
render "new"
end
end
end
用户模型:
class User < ActiveRecord::Base
attr_accessible :email
has_secure_password
validates_presence_of :password, :email, :on => :create
end
目前,我有两个字段。但正如我之前所说,我只想要一个。 我想继续使用 has_secure_password,它似乎提供了相当好的哈希/盐值安全性。