我见过Ryan railcasts第274集我正在使用rails 4并遇到一个问题.
在password_resets_controller.rb中
elsif @user.update_attributes(params[:user])
Run Code Online (Sandbox Code Playgroud)
在控制台中显示
ActiveModel::ForbiddenAttributesError in PasswordResetsController#update
Run Code Online (Sandbox Code Playgroud)
当我修改update_attributes,以update_attribute它显示
wrong number of arguments (1 for 2)
Run Code Online (Sandbox Code Playgroud)
params[:user]显示两个值password,password_confirmation但我password在我的登录页面中使用
我不知道如何解决这个问题.
San*_*osh 30
这是因为Rails 4中的强参数功能.当禁用属性用于质量分配时,将引发此功能.
您必须允许控制器中的属性.像这样
@user.update_attributes(params.require(:user).permit(:password, :password_confirmation))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7642 次 |
| 最近记录: |