如何定义Laravel 5中JSON
中提供的pgsql 9.4
数据类型?
我需要定义数据类型,存储和获取数据,到目前为止还无法找到在Laravel 5.1中处理它的方法
答案 0 :(得分:46)
在您的迁移中,您可以执行以下操作:
$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的相关答案
答案 1 :(得分:6)
根据Laravel文档,'json'不是可用的类型之一。 https://laravel.com/docs/5.1/eloquent-mutators
您应该使用'array'代替:
class SomeModel extends Model
{
protected $casts = [
'field_name' => 'array'
];
}