ユーザー登録機能を実装していましたが、facebook認証に伴い、deviseを導入したところ、元々実装していたユーザー登録機能でエラーが出るようになってしまいました。。
元々は問題なく動いていたので、解決方法がわかりません。。
以下、エラー文とコードです。
ruby
1エラー文 2 3ArgumentError in UsersController#create 4wrong number of arguments (given 0, expected 1) 5 6def create 7 @user = User.new(user_params) 8 if @user.save 9 log_in @user 10 flash[:success] = "welcome Insta_potepan" 11 redirect_to @user 12 13Rails.root: /Users/shunsuke/Desktop/potepan/insta_potepan 14 15Application Trace | Framework Trace | Full Trace 16app/controllers/users_controller.rb:21:in `create' 17
ruby
1users_controller.rb 2 3def create 4 @user = User.new(user_params) 5 if @user.save 6 log_in @user 7 flash[:success] = "welcome Insta_potepan" 8 redirect_to @user 9 else 10 render 'new' 11 end 12 end 13 14・ 15・ 16 17private 18 19 def user_params 20 params.require(:user).permit(:name, :username, :password) 21 end 22 23
ruby
1views/users/new.html.erb 2 3<%= provide(:title, "登録") %> 4 5<div class="row"> 6 <div class="col-md-6 col-md-offset-3"> 7 <%= form_for(@user, url:signup_url) do |f| %> 8 <%= render 'shared/error', object: f.object %> 9 10 <%= f.label :name, "名前" %> 11 <%= f.text_field :name, class: 'form-control' %> 12 13 <%= f.label :username, "ユーザー名" %> 14 <%= f.text_field :username, class: 'form-control' %> 15 16 <%= f.label :password, "パスワード" %> 17 <%= f.password_field :password, class: 'form-control' %> 18 19 <%= f.submit "登録する", class: "btn btn-primary" %> 20 <% end %> 21 22 <%= link_to "利用規約", "https://help.instagram.com/581066165581870" %> 23
ruby
1routes.rb 2 3get '/signup', to: 'users#new' 4 post '/signup', to: 'users#create'
エラー文の意味もなんとなくわかるのですが、
なぜオブジェクトが渡されないのかがわかりません。。
よろしくお願いいたします。。
あなたの回答
tips
プレビュー