我有一个带有移动API的laravel 5.6 Web应用程序。
问题是laravel将所有整数和布尔值自动转换为字符串。 我想知道有什么办法可以解决吗?
有趣的是,它在本地工作正常!
以下是API输出的示例(API输出为JSON)
{
"id": 9,
"city_id": "1",
"avatar": "group-377.png",
"biography": null,
"username": "mnalci",
"chosen": "1",
"blocked": "1",
"blocked_until": null,
"is_registered": "1",
"actived_at": "2020-05-03 00:00:00",
"created_at": "2020-05-16 13:21:44",
"updated_at": "2020-05-16 13:21:44",
"is_followed": "1",
"is_requested": "0"
},
如您所见,将在数据库中定义为整数的city_id强制转换为字符串 并且所有布尔值也都强制转换(如选择的字段)
我找到了一种在这样的模型中转换值的方法
protected $casts = [
'is_registered' => 'boolean' ,
'blocked' => 'boolean' ,
];
但我认为这些方法必须比在每个模型中投射每个字段更好的方法。它的庞大项目,这将花费大量时间。