我得到一个奇怪的错误,我不明白。似乎当我尝试创建一个新的模型对象时,关于params的一些东西正在作为符号,我无法对它们做任何事情。
我得到的错误是:
can't convert Symbol into Integer
控制器操作是:
def create
user_info = :params[:user]
if !user_info.value? ""
if user_info[:password] == user_info[:password2] and user_info[:email] == user_info[:email2]
user_info.delete("password2")
user_info.delete("email2")
@user = User.create!(user_info)
@user = User.new(user_info)
respond_to do |format|
if @user.save
format.html { redirect_to(@user, :notice => 'User was successfully created.') }
else
format.html { render :action => "new" }
end
end
end
flash[:warning] = "Please try again"
redirect_to home_index_path
end
我尝试使用""提交属性,但是我收到此错误。当我删除指示的问题行user_info = :params[:user]
并根据:params[:user]
更改了所有内容时,它仍然会抛出错误并指示下一行是问题。
谁能明白为什么?
答案 0 :(得分:3)
打开
user_info = :params[:user]
为:
user_info = params[:user]