Laravel 表单 $request 输入值 0 在尝试更新时变为 NULL


Laravel Form $request input value of 0 turns NULL while trying to update

我有一个带有输入字段百分比的Laravel表单(定义为$table->decimal('percent', 5, 2);)。

如果用户输入 1 、2、2.04、8.97、100.00、88.00 等值,一切都会顺利进行。即使用户输入 0.00,所有内容也会正确更新。

但是当用户输入 0 时,在更新记录之前它会失败,因为 0(实际上是"0"字符串)在正在执行的 SQL 中变成了null,并且因为字段不可为空,它给了我 SQL 错误。

这是意料之中的还是我在这里错过了什么?

谢谢

K

尝试使用 isnull 检查

isnull(value,0) as value

coalesce(value, 0) as value;

在 SQL 查询中。