rails にdeviseを入れてログイン機能を実装したいのですが、ログインができません。
ターミナルに以下のようなエラーが出てしまいます。
Processing by Users::SessionsController#new as HTML Parameters: {"utf8"=>"✓", "authenticity_token"=>"DFid3wxP14U58mO9o8hwoSWAnjZ2qSYpy7QIEWY7InOjvz5X2/hA/xjViZUAX+suJcI1AmCNXyt36lLHa+Woyg==", "user"=>{"name"=>"abc@example.com", "password"=>"[FILTERED]", "remember_me"=>"0"}, "commit"=>"Log in"} Unpermitted parameter: :name Rendering devise/sessions/new.html.erb within layouts/application Rendered devise/shared/_links.html.erb (1.6ms) Rendered devise/sessions/new.html.erb within layouts/application (30.6ms) Completed 200 OK in 441ms (Views: 329.7ms | ActiveRecord: 0.0ms)
application_controller.rb↓
class ApplicationController < ActionController::Base protect_from_forgery with: :exception before_action :configure_permitted_parameters, if: :devise_controller? before_action :authenticate_user! def after_sign_in_path_for(resource) user_path # ログイン後に遷移するpathを設定 end def after_sign_out_path_for(resource) root_path # ログアウト後に遷移するpathを設定 end protected def configure_permitted_parameters added_attrs = [ :email, :name, :password, :password_confirmation ] devise_parameter_sanitizer.permit(:sign_up, keys: [:name]) #added_attrs devise_parameter_sanitizer.permit :account_update, keys: added_attrs devise_parameter_sanitizer.permit :sign_in, keys: added_attrs end end
new.html.erb↓
<h2>Log in</h2> <%= form_for(resource, as: resource_name, url: session_path(resource_name)) do |f| %> <div class="field"> <%= f.label :Name %><br /> <%= f.text_field :name, autofocus: true, autocomplete: "name" %> </div> <div class="field"> <%= f.label :Password %><br /> <%= f.password_field :password, autocomplete: "current-password" %> </div> <% if devise_mapping.rememberable? %> <div class="field"> <%= f.check_box :remember_me %> <%= f.label :remember_me %> </div> <% end %> <div class="actions"> <%= f.submit "Log in",class: "btn btn-primary" %> </div> <% end %> <%= render "devise/shared/links" %>
試したこと
nameが許されていないということなので、ググってみるて、
application_controller.rbに以下を記述。しかし変化なし…
def configure_permitted_parameters added_attrs = [ :email, :name, :password, :password_confirmation ] devise_parameter_sanitizer.permit(:sign_up, keys: [:name]) #added_attrs devise_parameter_sanitizer.permit :account_update, keys: added_attrs devise_parameter_sanitizer.permit :sign_in, keys: added_attrs end
足りない情報などありましたら教えてください!
ご教授いただけるとありがたいです????♂️
あなたの回答
tips
プレビュー