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>
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. –
Es gibt buchstäblich Dutzende von Duplikaten für diese Frage. Bitte wenden Sie sich an sie für Antworten. –
@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. –