2017-12-04 4 views
-1

Kann mir jemand helfen, was ist das Problem meiner folgenden Daten Code einfügen?SQLSTATE [42S22]: Spalte nicht gefunden: 1054 Unbekannte Spalte 'Titel' in 'Feldliste' in Laravel 5.4

SQLSTATE [42S22]: Column nicht gefunden: 1054 Unknown column 'title' in 'Feldliste' (SQL: insert into gallery_categories (Titel, Beschreibung, category_id, Bild, updated_at, created_at) Werte (Test Titel, Testdetails, 1, 1512370315.jpg, 2017.12.04 06.51.55, 2017-12-04 06:51:55))

ich habe zwei Modell. Eines von GalleryModel und anderen von GalleryCategoryModel. Wenn ich dd($request->all()); benutze, dann ist das Debuggen perfekt.

N.B: Ich bin neu in Laravel.

GalleryModel Modell

class GalleryModel extends Model 
    { 
     protected $table  = 'galleries'; 
     protected $primaryKey = 'id'; 
     protected $fillable = ['title', 'description', 'image', 'category_id']; 
    } 

Und hier ist mein GalleryCategoryModel Modell

class GalleryCategoryModel extends Model 
    { 
     protected $table  = 'gallery_categories'; 
     protected $primaryKey = 'id'; 
     protected $fillable = ['name']; 

    } 

Mein Controller GalleriesController

public function create() 
    { 
     $categories = GalleryCategoryModel::all(); 
     return view('pages.backend.galleries.create')->withCategories($categories); 
    } 


public function store(StoreGalleryRequest $request) 
    { 
     $gallery = new GalleryCategoryModel; 

     $gallery->title  = $request->title; 
     $gallery->description = $request->description; 
     $gallery->category_id = $request->category_id; 

     if($request->hasFile('gallery_image')){ 
      $image = $request->file('gallery_image'); 
      $filename = time() . '.' .$image->getClientOriginalExtension(); 
      $location = public_path('assets/backend/images/' .$filename); 
      Image::make($image)->resize(500, 350)->save($location); 

      $gallery->image = $filename; 
     } 
     $gallery->save(); 
     Session::flash('success', "Data has been insert success"); 
     return redirect()->route('galleries.index', $gallery->id); 
    } 
Hier

ist mein HTML-Code

<div class="br-section-wrapper"> 
     <h6 class="tx-gray-800 tx-uppercase tx-bold tx-14 mg-b-10">Create New Gallery</h6> 
     {!! Form::open(array('route' => 'galleries.store', 'data-parsley-validate' => '', 'files' => true)) !!} 
    {{ csrf_field() }} 
    <div class="row"> 
     <div class="col-md-12"> 
     <div class="row"> 
      <div class="col-md-4"> 
      <div class="form-group margin-top15"> 
       <label for="title">Gallery Title: <span class="tx-danger">*</span></label> 
       <input type="text" name="title" id="title" class="form-control" required> 
      </div> 
      </div> 

      <div class="col-md-4"> 
      <div class="form-group margin-top15"> 
       <label for="category_id">Select Category: <span class="tx-danger">*</span></label> 
       <select class="form-control select2 width-100" name="category_id" id="category_id" data-placeholder="Choose one" data-parsley-class-handler="#slWrapper" data-parsley-errors-container="#slErrorContainer" required> 
        <option label="Choose one"></option> 
        @foreach($categories as $category) 
        <option value="{{ $category->id }}">{{ $category->name }}</option> 
        @endforeach 
       </select> 
      </div> 
      </div> 
      <div class="col-md-4"> 
      <div class="form-group margin-top15"> 
       <label for="gallery_image">Gallery Image: <span class="tx-danger">*</span></label> 
       <input type="file" name="gallery_image" id="gallery_image" class="form-control" required> 
      </div> 
      </div> 
     </div> 

     <div class="row"> 
      <div class="col-md-12"> 
      <label for="description">Description: <span class="tx-danger">*</span></label> 
      <textarea name="description" id="description" class="form-control"></textarea> 
      </div> 
     </div> 

     <div class="form-group margin-top15"> 
      <button type="submit" class="btn btn-info tx-11 pd-y-12 tx-uppercase tx-spacing-2">Create Gallery</button> 
     </div> 
     </div> 
    </div> 
    {!! Form::close() !!} 
</div> 
+4

Ist die Fehlermeldung nicht selbsterklärend? Hat Ihre Tabelle 'gallery_categories' tatsächlich eine Spalte namens' title'? Ich denke, Sie verwenden einfach das falsche Modell, da Sie versuchen, 'title',' description' und 'category_id' auf ein' GalleryCategoryModel'-Objekt zu setzen. –

+1

Es gibt buchstäblich Dutzende von Duplikaten für diese Frage. Bitte wenden Sie sich an sie für Antworten. –

+1

@Mahbub Geist Bearbeiten (out) den Beginn Ihres Kommentars bitte? es könnte als unhöflich/beleidigend markiert werden, oder für die Moderation gekennzeichnet werden, wenn nicht getan, über das * "Oh sh * t" * one. –

Antwort

6

Dies ist, weil Sie nicht eine Spalte namens Titel in Ihren gallery_categories Tabellen haben.

Verwandte Themen