Laravel - Arrays zu-string-Konvertierung Fehler auf Model::create (Model->speichern()
Ich bin der Durchführung einer einfachen einfügen, die ich getan habe, viele Male ohne Probleme und für einige ungerade Grund, warum es nicht funktioniert und ich bekomme diese Fehlermeldung:
error: {type: "ErrorException", message: "Array to string conversion",…}
file: "C:\wamp\www\studentreg2\vendor\laravel\framework\src\Illuminate\Database\Grammar.php"
line: 33
message: "Array to string conversion"
type: "ErrorException"
Hier ist mein code:
$advisorCheck = AdvisorCheck::create([
'status' => Input::get('status'),
'application_id' => Input::get('id'),
'user_id' => Auth::id()
]);
Die migration für die advisor_check Tabelle, die AdvisorCheck-Modell verwendet, scheint in Ordnung, alle Fremdschlüssel, die nicht signiert sind und zeigen die Beziehungen richtig in phpmyadmin alle Werte aus dem Input::get sind strings, die das Modell hat die richtigen Felder legen Sie als ausfüllbare (status, application_id, user_id).
Habe ich sogar versucht, dies zu tun in php artisan tinker
wie diese:
AdvisorCheck::create([ 'status' => 'returned', 'application_id' => '3', 'user_id' => '4']);
und ich bekomme diese Antwort:
Array to string conversion
Ich hab auch schon versucht diese Methode, und bekomme den gleichen Fehler:
$advisorCheck = new AdvisorCheck;
$advisorCheck->status = Input::get('status');
$advisorCheck->application_id = Input::get('id');
$advisorCheck->user_id = Auth::id();
$advisorCheck->save();
Modell code:
<?php
class AdvisorCheck extends \Eloquent {
protected $fillable = ['status', 'application_id', 'user_id'];
protected $table = ['advisor_check'];
}
Wenn du mehr sehen müssen code bitte.
Vielen Dank, wer kann helfen!
Ich habe das Gefühl, es ist, weil ich die $Tabelle vor $befüllbar, alle meine anderen Modelle $fillable ersten - gibt es einen Schuss jetzt
Nein war es nicht - hat keinen Sinn für Sie, dass ich denke? Ich werde nach den Modell-code
Die
table
Eigenschaft muss ein string und kein array!Guter spot.
InformationsquelleAutor haakym | 2014-12-17
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wie Sie im Beispiel sehen können, sehen Sie in der Laravel docs die table-Eigenschaft ist ein string und nicht ein array
Macht total Sinn, wenn man darüber nachdenkt, seit Eloquent-Modelle keine Unterstützung für mehrere Tabellen nativ.
Sehr dummen Fehler.
InformationsquelleAutor lukasgeiter
$table
sollte ein string, kein arrayInformationsquelleAutor nilobarp