2016-09-30 6 views
1

を申し込むこれは私がこの/users/sign_up?account=571917355は、登録を考案するのparamsを渡すときに/

registrations_controller.rbのようなURLに何かを通じてのparamsを渡すためにしようとしています

When assigning attributes, you must pass a hash as an argument. 

が表示されたエラーであるハッシュエラーを渡す必要があります

def new 
    @user = User.new(params[:account]) 
end 

これが機能しないようなことをやっているのですか?私は検索しましたが、エラーを修正するのに役立つものはありません。私は本当にこのエラーが何を意味するか分からない。

+0

このUser.new(:account => params [:account])のようにパラメータを渡す必要があります。 – Navin

答えて

1

が好きでなければならない。この

user[:account] 

URLを好きに持っています

before_filter :configure_permitted_parameters, if: :devise_controller? 

    protected 

    def configure_permitted_parameters 
    devise_parameter_sanitizer.for(:sign_up).push(:account) 
    end 

または

devise_parameter_sanitizer.permit(:sign_up, keys: [:account]) 

ここをクリックinfo

0

それはPOSTリクエストをする必要がありますし、パラメータが考案新しいのために、この/ sign_up?ユーザー[アカウント] = 571917355 &ユーザー[名]は= xyzの

関連する問題