2016-12-20 2 views
0

Hoffe, jemand anderes hatte das gleiche Problem und war in der Lage, dieses Problem zu lösen. Ich habe ein neues Laravel-Projekt installiert und php artisan make: auth verwendet, um die grundlegende Auth-Funktion zu erhalten. Seltsam ist, dass nach einem erfolgreichen Login kein Logout Link in der Navbar ist. Es sollte unter dem Benutzernamen (der eine Pulldown-Option hat) verfügbar sein, aber wenn ich auf meinen Benutzernamen klicke, passiert nichts.Laravel keine Abmeldung von Menü nach erfolgreicher Anmeldung

Jeder hat eine Lösung? Hilfe wird sehr geschätzt.

+0

Wenn keine Abmeldeoption verfügbar ist, warum fügen Sie sie dann nicht selbst hinzu? – Qazi

+0

@Qazi gut .. es ist da, aber es funktioniert nicht. Daher mein Q – Brnovich

+0

bitte teilen Sie Ihren Code für die Abmelde-Taste, auch prüfen, ob Abmeldung Route und Methode verfügbar ist? – Qazi

Antwort

1

Problem gelöst:

Scheint wie Laravel nicht die richtigen JQuery-Dateien geladen werden, damit es funktioniert. Achten Sie darauf, die richtigen JQuery-Libs wie diese laden:

<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script> 
<script src="//netdna.bootstrapcdn.com/bootstrap/3.1.1/js/bootstrap.min.js"></script> 
0

@Qazi: Es ist nur die Standard-app.blade.php von Laravel selbst:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="utf-8"> 
<meta http-equiv="X-UA-Compatible" content="IE=edge"> 
<meta name="viewport" content="width=device-width, initial-scale=1"> 

<!-- CSRF Token --> 
<meta name="csrf-token" content="{{ csrf_token() }}"> 

<title>{{ config('app.name', 'Laravel') }}</title> 

<!-- Styles --> 
<link href="/css/app.css" rel="stylesheet"> 

<!-- Scripts --> 
<script> 
    window.Laravel = <?php echo json_encode([ 
     'csrfToken' => csrf_token(), 
    ]); ?> 
</script> 
</head> 
<body> 
<div id="app"> 
    <nav class="navbar navbar-default navbar-static-top"> 
     <div class="container"> 
      <div class="navbar-header"> 

       <!-- Collapsed Hamburger --> 
       <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#app-navbar-collapse"> 
        <span class="sr-only">Toggle Navigation</span> 
        <span class="icon-bar"></span> 
        <span class="icon-bar"></span> 
        <span class="icon-bar"></span> 
       </button> 

       <!-- Branding Image --> 
       <a class="navbar-brand" href="{{ url('/') }}"> 
        {{ config('app.name', 'Laravel') }} 
       </a> 
      </div> 

      <div class="collapse navbar-collapse" id="app-navbar-collapse"> 
       <!-- Left Side Of Navbar --> 
       <ul class="nav navbar-nav"> 
        &nbsp; 
       </ul> 

       <!-- Right Side Of Navbar --> 
       <ul class="nav navbar-nav navbar-right"> 
        <!-- Authentication Links --> 
        @if (Auth::guest()) 
         <li><a href="{{ url('/login') }}">Login</a></li> 
         <li><a href="{{ url('/register') }}">Register</a></li> 
        @else 
         <li class="dropdown"> 
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-expanded="false"> 
           {{ Auth::user()->name }} <span class="caret"></span> 
          </a> 

          <ul class="dropdown-menu" role="menu"> 
           <li> 
            <a href="{{ url('/logout') }}" 
             onclick="event.preventDefault(); 
               document.getElementById('logout-form').submit();"> 
             Logout 
            </a> 

            <form id="logout-form" action="{{ url('/logout') }}" method="POST" style="display: none;"> 
             {{ csrf_field() }} 
            </form> 
           </li> 
          </ul> 
         </li> 
        @endif 
       </ul> 
      </div> 
     </div> 
    </nav> 

    @include ('layouts.partials._notifications') 

    @yield('content') 
</div> 

<!-- Scripts --> 
<script src="/js/app.js"></script> 

Dann ist diese in Routen Ordner meine web.php ist:

<?php 

Use Illuminate\Http\Request; 

Route::get('/', function (Request $request) { 
    return view('home'); 
}); 

Auth::routes(); 

Route::get('/home', '[email protected]'); 
Route::get('/activate/token/{token}', 'Auth\[email protected]')->name('auth.activate'); 
Route::get('/activate/resend', 'Auth\[email protected]')->name('auth.activate.resend'); 

Nun, was ich bemerkt habe, ist, dass das CSS-Markup nicht vorhanden ist, wenn ich zwischen den Seiten umschalte. Wenn ich zum Beispiel auf den Link "Passwort vergessen" klicke, ist das CSS-Markup weg. Scheint so, als könnte es den css Ordner nicht finden oder der Pfad ist nicht richtig auf meinem lokalen Rechner.

0

ich das gleiche Problem festgestellt und gelöst durch JQuery und Bootstrap-Skripte einfach zu entfernen, da sie von app.js geladen werden (ich verwende Laravel 5.5).

Verwandte Themen