前提・実現したいこと
herokuデプロイ後も正常にログアウト機能を動作するようにする。
ローカル環境では、問題なくログアウトは動作する状況。
発生している問題・エラーメッセージ
$ heroku logs で確認すると下記のようなエラーが発生。
ActionController::RoutingError (No route matches [GET] "/logout"):
該当のソースコード
routes.rb
Rails.application.routes.draw do root 'pages#home' devise_for :users, path: '', path_names: {sign_in: 'login', sign_out: 'logout', edit: 'profile', sign_up: 'registration'}, controllers: {registrations: 'registrations'} resources :users, only: [:show] resources :cameras, except: [:edit] do member do get 'listing' get 'pricing' get 'description' get 'photo_upload' get 'amenities' get 'location' get 'preload' get 'preview' end resources :photos, only: [:create, :destroy] resources :reservations, only: [:create] end resources :guest_reviews, only: [:create, :destroy] resources :host_reviews, only: [:create, :destroy] get '/your_trips' => 'reservations#your_trips' get '/your_reservations' => 'reservations#your_reservations' get 'search' => 'pages#search' end
_navbar.html.erb 該当箇所
<ul class="dropdown-menu"> <li><%= link_to "登録中Camera", cameras_path %></li> <li><%= link_to "貸したCamera", your_reservations_path %></li> <li><%= link_to "借りたCamera", your_trips_path %></li> <li role="separator" class="divider"></li> <li><%= link_to "ユーザー編集", edit_user_registration_path %></li> <li><%= link_to "ログアウト", destroy_user_session_path, method: :delete %></li> </ul>
application_controller.rb
class ApplicationController < ActionController::Base protect_from_forgery with: :exception before_action :configure_permitted_parameters, if: :devise_controller? protected def configure_permitted_parameters devise_parameter_sanitizer.permit(:sign_up, keys: [:fullname]) devise_parameter_sanitizer.permit(:account_update, keys: [:fullname, :phone_number, :description]) end end
試したこと
$ rails routes で確認すると、問題ないという認識です。
https://qiita.com/vinaka/items/ba0c8fd9b9fa76bf0010
また上記サイトなどを参考にエラー解消に努めていますが、解消されない状況です。
何かアドバイス等あればよろしくお願いいたします。
足りないソースについては提供させて頂きます。
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。