Laravel 新星 |如何在从 Laravel nova 资源存储布尔字段时传递默认值

Laravel Nova | How can i pass default value while storing Boolean field from Laravel nova resource

我在数据库中有一个字段 table,它的默认值为 true 现在,当有人从 Laravel nova 创建一个条目时,我想默认传递 true 而不是在创建和更新表单中显示该字段...所以任何人都可以帮助我如何解决这个问题。

Boolean::make('Is Active', 'is_active')->onlyOnIndex(),

您可以在您的模型上设置默认值,nova 应该会自动拾取它。

https://laravel.com/docs/5.8/eloquent#default-attribute-values

protected $attributes = [
    'is_active' => true,
];

这对我有用

    Boolean::make('Active','active')
        ->trueValue('1')
        ->falseValue('0')
        ->withMeta(['value' => $this->active ?? true]),

创建时,活动列的值将是 null/empty,因为它是一个新的 "item",并且对数据库默认值一无所知。这会将表单活动字段设置为 true。更新时它将使用 DB 值。