Ruby on Railsでdevise
を利用してログイン認証機能を実装しているのですが、deviseのヘルパーメソッドであるuser_signed_in?
を下記のコードの通り使ったのですが、ログインしているにも関わらずサインアップ、ログイン
の方が表示されてしまいます。
ちなみにuser_signed_in?
の前のif
をunless
に変えたらログアウト
が表示されました。
大変困っていますので、どうかご助力お願いします。
<nav class="navbar navbar-default navbar-fixed-top navbar-static-top"> <div class="container-fluid"> <div class="navbar-header"> <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar"> <span class="sr-only">Toggle navigation</span> <span class="icon-bar"></span> <span class="icon-bar"></span> <span class="icon-bar"></span> </button> <a class="navbar-brand" href="/">タイトル</a> </div> <div class="collapse navbar-collapse" id="navbar"> <ul class="nav navbar-nav navbar-right"> <% if user_signed_in? %> <li><%= link_to 'ログアウト', destroy_user_session_path, method: :delete %></li> <% else %> <li><%= link_to 'サインアップ', new_user_registration_path %></li> <li><%= link_to 'ログイン', new_user_session_path %></li> <% end %> </ul> </div> </div> </nav>
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。