Как определить и использовать тип данных JSON в Eloquent? Как определить тип данных JSON который pgsql 9.4 в pgsql 9.4 в Laravel 5? Мне нужно определить тип данных, сохранить и извлечь данные и до сих пор не удалось найти способ справиться с этим в Laravel 5.1 Ответ 1 В ваших миграциях вы можете сделать что-то вроде: $table->json('field_name'); И в вашей модели вы добавляете поле в свойство $casts чтобы инструктировать Eloquent десериализовать его из JSON в массив PHP: class SomeModel extends Model { protected $casts = [ 'field_name' => 'array' ]; } Источник: https://laravel.com/docs/5.1/eloquent-mutators#attribute-casting Примечание. Это также важный ответ для Laravel 5.6 Ответ 2 Согласно документации Laravel, "json" не является одним из доступных типов литья. https://laravel.com/docs/5.1/eloquent-mutators Вместо этого вы должны использовать "массив": class SomeModel extends Model { protected $casts = [ 'field_name' => 'array' ]; }
Ответ 1 В ваших миграциях вы можете сделать что-то вроде: $table->json('field_name'); И в вашей модели вы добавляете поле в свойство $casts чтобы инструктировать Eloquent десериализовать его из JSON в массив PHP: class SomeModel extends Model { protected $casts = [ 'field_name' => 'array' ]; } Источник: https://laravel.com/docs/5.1/eloquent-mutators#attribute-casting Примечание. Это также важный ответ для Laravel 5.6
Ответ 2 Согласно документации Laravel, "json" не является одним из доступных типов литья. https://laravel.com/docs/5.1/eloquent-mutators Вместо этого вы должны использовать "массив": class SomeModel extends Model { protected $casts = [ 'field_name' => 'array' ]; }