Rails: 未定义的局部变量或方法“user_params”
Rails: undefined local variable or method `user_params'
我正在阅读 https://www.railstutorial.org/ 第 7 章。
我已经为新用户创建了一个注册页面来输入他们的信息。但是,一旦用户完成了这个,我在按下提交后收到一条错误消息。
undefined local variable or method `user_params' for #<UsersController:0x007fff122629d8>
这是我的代码:
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
def new
@user = User.new
end
def create
@user = User.new(user_params)
if @user.save
flash[:success] = "Welcome to the Sample App!"
redirect_to @user
else
render 'new'
end
end
private
def users_params
params.require(:user).permit(:name, :email, :password, :password_confirmation)
end
end
我检查了其他答案,他们认为我的 'end' 陈述不正确。我玩过它们没有效果。
我认为这可能与我的 "user" 或 "users" 有关,但我不知道该怎么做 :/
感谢您的建议!
你打错了:
@user = User.new(user_params) # should be users_params
您已经创建了一个名为 users_params
的 private 方法并将其称为 user_params
。这就是你错误的全部根源。
我正在阅读 https://www.railstutorial.org/ 第 7 章。
我已经为新用户创建了一个注册页面来输入他们的信息。但是,一旦用户完成了这个,我在按下提交后收到一条错误消息。
undefined local variable or method `user_params' for #<UsersController:0x007fff122629d8>
这是我的代码:
class UsersController < ApplicationController
def show
@user = User.find(params[:id])
end
def new
@user = User.new
end
def create
@user = User.new(user_params)
if @user.save
flash[:success] = "Welcome to the Sample App!"
redirect_to @user
else
render 'new'
end
end
private
def users_params
params.require(:user).permit(:name, :email, :password, :password_confirmation)
end
end
我检查了其他答案,他们认为我的 'end' 陈述不正确。我玩过它们没有效果。
我认为这可能与我的 "user" 或 "users" 有关,但我不知道该怎么做 :/
感谢您的建议!
你打错了:
@user = User.new(user_params) # should be users_params
您已经创建了一个名为 users_params
的 private 方法并将其称为 user_params
。这就是你错误的全部根源。