ActiveModel:创建新用户时的ForbidenAttributesError我在Ruby中有这个模型,但是它抛出了一个ActiveModel::ForbiddenAttributesErrorclass User < ActiveRecord::Base
attr_accessor :password
validates :username, :presence => true, :uniqueness => true, :length => {:in => 3..20}
VALID_EMAIL_REGEX = /\A[\w+\-.]+@[a-z\d\-.]+\.[a-z]+\z/i
validates :email, presence: true, :uniqueness => true, format: { with: VALID_EMAIL_REGEX }
validates :password, :confirmation => true
validates_length_of :password, :in => 6..20, :on => :create
before_save :encrypt_password
after_save :clear_password def encrypt_password if password.present?
self.salt = BCrypt::Engine.generate_salt self.encrypted_password= BCrypt::Engine.hash_secret(password, salt)
end
end
def clear_password self.password = nil
endend当我运行这个动作 def create @user = User.new(params[:user])
if @user.save
flash[:notice] = "You Signed up successfully"
flash[:color]= "valid"
else
flash[:notice] = "Form is invalid"
flash[:color]= "invalid"
end
render "new"
end在……上面ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux].你能告诉我如何消除这个错误或建立一个适当的用户登记表吗?
3 回答
大话西游666
TA贡献1817条经验 获得超14个赞
ActiveAdmin.register Api::V1::Person do permit_params :name, :address, :etcend
def api_v1_person_params params.require(:api_v1_person).permit(:name, :address, :etc)end
ActiveModel::ForbiddenAttributesError
- 3 回答
- 0 关注
- 593 浏览
添加回答
举报
0/150
提交
取消