-1

i have my blade file like this:

 <div class="nav-item dropdown">
                @if (Auth::check())
                    <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown">{{ Auth::user()->name }}</a>
                    <div class="dropdown-menu">
                        <a href="/profileDetail" class="dropdown-item">Profile</a>
                        <a href="order_history" class="dropdown-item">My Order</a> 
                            
                        <a href="#" class="dropdown-item" onclick="event.preventDefault(); document.getElementById('logout-form').submit();">
                        Logout </a>

                        <form id="logout-form" action="{{ route('logout') }}" method="POST" class="d-none">
                        @csrf
                        </form>
                    </div>
                
                @else
              

                <div class="nav-item dropdown">
                    <a href="#" class="nav-link dropdown-toggle" data-toggle="dropdown">Login</a>
                    <div class="dropdown-menu">
                        <a href="{{ route('user.login') }}" class="dropdown-item">Customer </a>
                        <a href="{{ route('user.register') }}r" class="dropdown-item">Register</a>
                            
                    </div>
                </div>
                
                @endif

                </div>

and my router like this:

/multi-auth router
Route::prefix('user') ->name ('user.') ->group (function(){

    Route::middleware (['guest']) ->group (function(){
        Route::view('/login', 'dashboard.user.login') ->name ('login');
        Route::view('/register', 'dashboard.user.register') ->name ('register');

    });

    Route::middleware(['auth']) ->group(function(){
        Route::view('/home', 'dashboard.user.home') ->name ('home');


    });
});

i have already add use App\Http\Controllers\UserController; in the web.php but i still get that UserController cannot found. I really dont know where i am wrong. Is it perhaps i dont use Route::has (user.login)?

i am using laravel/ui but i have changed my blade to the one i wrote above

brombeer
  • 8,716
  • 5
  • 21
  • 27
  • There is nowhere in the provided code that references `UserController` so obviously none of the code here is causing that error message. – miken32 Jan 10 '22 at 18:30

1 Answers1

-1

but you didnt mention the UserCotroller in your route? how do you expect ot to find it ? you are returning views through your route, you are not redirectting it to your controller

here is how you should declare it :

 Route::get('/register', [UserController::class, 'create'])
            ->middleware('guest')
            ->name('register');

    Route::post('/register', [UserController::class, 'store'])
            ->middleware('guest');


    Route::get('/login', [UserController::class, 'create'])
            ->middleware('guest')
            ->name('login');

    Route::post('/login', [UserController::class, 'store'])
            ->middleware('guest');

and in the create method you can write

return view(dashboard.user.login); 
youss
  • 57
  • 8
  • i am referring to a video: https://www.youtube.com/watch?v=PqAaBo_I_a4 and he works it just fine. The only thing i didnt follow is the blade file and did not place my UserController in Controllers/User but instead just put it in /Controllers – Turtle Developer Jan 10 '22 at 17:50
  • I am trying to follow the video to use prefix and grouping router? Can you help me to do that? – Turtle Developer Jan 11 '22 at 02:53