小数列类型的 Laravel 默认值

Posted

技术标签:

【中文标题】小数列类型的 Laravel 默认值【英文标题】:Laravel Default Value for Decimal Column Type 【发布时间】:2021-12-16 17:00:59 【问题描述】:

我正在尝试为小数列设置默认值。但我仍然收到“非空违规错误”。

我尝试过的:

    默认('0') 默认(0) 默认('0.00') (solution from another stack overflow question) 默认('00000000000000000.00') 默认(0.00)

我尝试过的方法都不起作用。有谁知道如何解决这个问题?

【问题讨论】:

您是否尝试过 default(0.00)、传递其他非零双精度(如 0.12)以验证格式或禁用 SQL 严格模式? @moonvader 仍然不是空违规 迁移可能正在工作,但是当您插入新记录时,您在查询中传递了空值 【参考方案1】:

我在一个不同的问题中看到了这个,有点像你的问题。

$table->decimal('exit_fee', 19, 2)->default('00000000000000000');

【讨论】:

【参考方案2】:

试试这个

$table->decimal('exit_fee', 19, 2)->default('00000000000000000.00');

运行迁移会看到

https://i.stack.imgur.com/k8NQF.png

【讨论】:

仍然不是空违规

以上是关于小数列类型的 Laravel 默认值的主要内容,如果未能解决你的问题,请参考以下文章

Point类型的默认值

如果请求值为空,Laravel 设置默认值

Laravel5 控制器

Laravel - 更改默认值 eloquent

Laravel:迁移更改列的默认值(布尔值)

如何在 Laravel 模型上设置属性的默认值 [重复]