Illuminate Database QueryException
SQLSTATE[42S22]: 1054 Unbekannter Spaltenname 'category_name' in 'field list' (SQL: einfügen in categories
(category_name
, updated_at
, created_at
) Werte (Früchte, 2022-08-08 10:46:52, 2022-08-08 10:46: 52) )
Wie kann man es lösen?
Mein Controllername ist „CategorieController“. Dies ist die Store-Funktion sauvercategorie in meinem CategorieController.
namespace AppHttpControllers; use IlluminateHttpRequest; use AppModelsCategorie; class CategorieController extends Controller { // public function ajoutercategorie(){ return view('admin.ajoutercategorie'); } public function sauvercategorie(Request $request){ $validatedData = $request->validate([ 'category_name' => 'required | max:255', ]); $categorie = Categorie::create($validatedData); return redirect('/ajoutercategorie')->with('status', 'La catégorie' .$categorie->category_name.'a été ajoutée avec succès');
Meine gesamte Klingendatei.
@extends('layouts.appadmin') @section('title') Ajouter une catégorie @endsection @section('contenu') <div class="row grid-margin"> <div class="col-lg-12"> <div class="card"> <div class="card-body"> <h4 class="card-title">Ajouter une catégorie</h4> @if (Session::has('status')) <div class="alert alert-success"> {{Session::get('status')}} </div> @endif @if ($errors->any()) <div class="alert alert-danger"> <ul> @foreach($errors->all() as $error) <li>{{ $error }}</li> @endforeach </ul> </div> @endif <form class="cmxform" id="commentForm" method="post" action="{{ route('categories.sauvercategorie') }}"> @csrf <fieldset> <div class="form-group"> <label for="cemail">Nom de la catégorie</label> <input id="cemail" class="form-control" type="text" name="category_name" > </div> <input class="btn btn-primary" type="submit" value="Ajouter"> </fieldset> </form> </div> </div> </div> </div> @endsection @section('scripts') {{--<script src="Administrateur/js/form-validation.js"></script> <script src="Administrateur/js/bt-maxLength.js"></script>--}} @endsection
Der Name des Modells ist Kategorie. Das ist mein Modell
namespace AppModels; use IlluminateDatabaseEloquentFactoriesHasFactory; use IlluminateDatabaseEloquentModel; class Categorie extends Model { use HasFactory; protected $fillable = ['category_name']; }
Mein Tabellenname ist „Kategorien“. Das ist meine Uhr
use IlluminateDatabaseMigrationsMigration; use IlluminateDatabaseSchemaBlueprint; use IlluminateSupportFacadesSchema; class CreateCategoriesTable extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('categories', function (Blueprint $table) { $table->id(); $table->string('categorie_name'); $table->timestamps(); }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('categories'); } }
Brauche Hilfe bei der Lösung, danke.
在迁移和模型中,您的字段名称不同。
将您的模型更改为:
改为: