数字在 scout:import Laravel 之后被格式化为字符串

Numbers are formatted as string after scout:import Laravel

我不得不使用 php artisan scout:import 命令,而我在本地环境中开发网站并且一切正常。但是,一旦我部署了我的应用程序并使用 ssh 使用了相同的命令,我就导入了我的模型,但是 int 属性呈现为字符串,f.e。 1 被格式化为“1”。因此,我没有使用 numeric_filters。我在这两种情况下都使用 MySql 数据库。

默认情况下,数字在 JSON 响应中呈现为字符串。 您可以使用此 中的说明,也可以在模型中使用强制转换属性,这样每次模型被序列化时,它都会按照指定强制转换相应的列。

例如在模型中,你可以这样定义:
protected $casts = [ 'something' => 'float' ];