artisticre's avatar

Routing Weird

Here is my form. When I click submit it doesn't go to admin.categories.store,

the route it goes to

Route::get('/', function () {
    return view('welcome');
});

Form

<form method="POST" action="{{ route('admin.categories.store')}}" enctype="multipart/form-data">
                    @csrf
                    <div class="row mt-3">

                    <div class="col-md-6 mb-3">
                        <label for="name" class="fw-bold mb-3">Name <span class="text-danger">*</span></label>
                        <input type="text" class="form-control @error('name') is-invalid @enderror" name="name">
                        @error('name')
                        <span class="text-danger">{{$message}}</span>
                        @enderror
                    </div>

                    <div class="col-md-6 mb-3">
                        <label for="slug" class="fw-bold mb-3">Slug <span class="text-danger">*</span></label>
                        <input type="text" class="form-control @error('slug') is-invalid @enderror" name="slug">
                        @error('slug')
                        <span class="text-danger">{{$message}}</span>
                        @enderror
                    </div>
                   </div>


                   <div class="row mt-3">
                    <div class="col-md-12 mb-3">
                    <label for="description" class="fw-bold mb-3">Description <span class="text-danger">*</span></label>
                    <textarea name="description" class="form-control @error('description') is-invalid @enderror" rows="3" name="description"></textarea>
                    @error('description')
                    <span class="text-danger">{{$message}}</span>
                    @enderror
                    </div>
                   </div>

                   <div class="row">
                    
                   <div class="col-md-6 mb-3">
                        <label for="status" class="fw-bold mb-3">Status</label><br />
                        <input type="checkbox" name="status" style="height:20px;width:20px">
                    </div>

                    <div class="col-md-6 mb-3">
                    <label for="image" class="fw-bold mb-3">Category Image</label>
                    <input type="file" class="form-control @error('image') is-invalid @enderror" name="image" onChange="categoryImageURL(this)">
                                            @error('image')
                                            <span class="text-danger">{{$message}}</span>
                                            @enderror
                                            <img src="" id="categoryImage" class="mt-4">
                    </div>
                   </div>

                   <div class="row mt-4">
                    <div class="card-header h3 col-md-12">SEO Details</div>
                    </div>

                    <div class="row mt-4">

                    <div class="col-md-3 mb-3 mt-3">
                    <label for="meta_title">Meta Title <span class="text-danger">*</span></label>
                    <input type="text" name="meta_title" class="form-control @error('meta_title') is-invalid @enderror">
                    @error('meta_title')
                    <span class="text-danger">{{$message}}</span>
                    @enderror
                    </div>

                    <div class="col-md-4 mb-3 mt-3">
                    <label for="meta_keyword">Meta Keywords <span class="text-danger">*</span></label>
                      <textarea name="meta_keyword" 
                      class="form-control @error('meta_keyword') is-invalid @enderror" 
                      name="meta_keyword" rows="1"></textarea>
                      @error('meta_keyword')
                      <span class="text-danger">{{$message}}</span>
                      @enderror
                    </div>

                  <div class="col-md-4 mb-3 mt-3">
                    <label for="meta_description">Meta Description <span class="text-danger">*</span></label>
                      <textarea name="meta_description" 
                      class="form-control @error('meta_description') is-invalid @enderror" 
                      name="meta_description" rows="1"></textarea>
                      @error('meta_description')
                      <span class="text-danger">{{$message}}</span>
                      @enderror
                    </div>
                    </div>

                    <div class="row">
                    <div class="col-md-12 mb-3 mt-3">
                    <div class="d-grid gap-2">
                    <button class="btn btn-dark btn-sm" type="submit">Save</button>
                    </div>
                    </div>
                  </div>


                  </form>   

Route

Route::prefix('admin')->middleware(['auth','isAdmin'])->group(function (){
    Route::get('dashboard',[DashboardController::class,'index'])->name('admin.dashboard');

    //Category Routes
    Route::get('/categories',[CategoryController::class,'index'])->name('admin.categories.index');
    Route::get('/categories/create',[CategoryController::class,'create'])->name('admin.categories.create');
    Route::post('/category/store',[CategoryController::class,'store'])->name('admin.categories.store');
});

Controller

<?php

namespace App\Http\Controllers\Admin;

use App\Http\Controllers\Controller;
use Illuminate\Http\Request;

class CategoryController extends Controller
{
    public function index()
    {
        return view('admin.categories.index');
    }

    public function create()
    {
        return view('admin.categories.create');
    }

    public function store(Request $request)
    {
    
        return 'test';
    }
}

0 likes
1 reply
Tray2's avatar

Sounds to me like you aren't logged in.

1 like

Please or to participate in this conversation.