我正在尝试进行下一个雄辩的查询
$result = $result->where('money','>=',(float)$moneyFilter);
Run Code Online (Sandbox Code Playgroud)
我的数据库中的货币列是 DECIMAL(11,2),当我运行查询时它返回一个空数组,当我查看 php artisan tinker 并看到列货币时,它是一个字符串值“11.1”。
我想过滤 $result 集合以使其值超过 $moneyFilter。
谢谢
您需要在模型中定义哪些字段需要转换为原始属性。
protected $casts = ['my_decimal' => 'float'];
Run Code Online (Sandbox Code Playgroud)
这里有一个非常好的解释:
https://mattstauffer.com/blog/laravel-5.0-eloquent-attribute-casting/
文档中也有解释:
https://laravel.com/docs/5.5/eloquent-mutators#attribute-casting
| 归档时间: |
|
| 查看次数: |
3338 次 |
| 最近记录: |