0

理解できない奇妙なエラーが発生します。新しいモデルオブジェクトを作成しようとすると、渡されたパラメータに関する何かがシンボルとして渡されているようで、何もできません。

私が得ているエラーは次のとおりです。

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] てもエラーがスローされ、次の行が問題として示されました。

誰でも理由がわかりますか?

4

1 に答える 1

3

順番

user_info = :params[:user] 

に:

user_info = params[:user] 
于 2013-04-06T22:19:54.847 に答える