2017-10-14 15 views
1

Also, ich versuche, Daten in der Datenbank als JSON zu speichern, ich habe gesehen, die integrierte Notification-Tabelle das tun.Wie man JSON in mysql laravel speichert

habe ich ein Feld vom Typ „Text“ und ich bin Speichern dieses (Beispiel)

{"filenames":["D0BmpFOdyUp4YyA8tqpL60VxO9kXsfciP9eLhIxd.jpeg","nAAs1xeErQSxPGxPvP68bCMn4a0E3y4EcgwfCwJl.png"],"title":"asdasdasa","content":"adasdasa"} 

Es gibt mir String als erwartet, wie mache ich es als ein Array zu verstehen?

Muss ich etwas in das Modell einfügen oder ...?

Danke.

Antwort

3

Siehe attribute Casting in Laravels Dokumentation. In Ihrer Eloquent Modellklasse, fügen Sie eine $casts Eigenschaft, zum Beispiel:

/** 
* The attributes that should be cast to native types. 
* 
* @var array 
*/ 
protected $casts = [ 
    'your_column_name' => 'array' 
]; 

Von Laravel Docs:

Die $casts Eigenschaft auf Ihrem Modell bietet eine bequeme Methode von Attributen zu gemeinsamen Datentypen zu konvertieren. Die $casts -Eigenschaft sollte ein Array sein, wobei der Schlüssel der Name des zu übergebenden Attributs ist und der Wert der Typ ist, in den die Spalte umgewandelt werden soll.

+0

Vielen Dank! Ich habe das stundenlang gesucht. – Wuzi

Verwandte Themen