laravel自动将整数转换为字符串

我有一个带有移动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' ,
    ];

但我认为这些方法必须比在每个模型中投射每个字段更好的方法。它的庞大项目,这将花费大量时间。

评论