如何使用动态表单在Yii2中添加默认值

时间:2016-12-30 22:52:12

标签: yii2 dynamic-forms

有没有办法将Yii2中的默认值添加到dynamicform字段?

像AfterInsert这样的东西 为新添加的字段添加一些值

<?= $form->field($newmodelDetConta, "[{$i}]abono")->label(false)->textInput
                            ([
                                'maxlength' => true,
                                'value' => '0.00',
                                'class' => 'form-control txtabono',
                                'style' => 'text-align: right',
                                'type' => 'number',
                                'type' => ['number',2],
                                'format'=> ['decimal',2]
                            ]) ?>

这仅适用于第一个字段,但是当我单击添加时,该值为空而不是“0.00”

1 个答案:

答案 0 :(得分:2)

如果您希望动态列的默认值,如果您不使用phpmyadmin或任何其他数据库GUI,那么您可以在该链接上set column default value directly in database, example ...示例如何操作

或将值设置为控制器中的模型,因此当您填写如下表单时,它将被填充:

{ 
"street":"92 Lee St."
"state":"Ontario"
"country":"Canada"
}

或者您可以在模型中的规则中使用默认的“验证器”,但这主要用于不从ActiveRecord扩展的模型

$model = new SomeModel();
$model->some_attribute = 'some default value';

或者如果您已设置虚拟属性,则可以直接在模型中设置其值

public function rules()
{
    return [
        // ...
        [['some_column'], 'default', 'value' => 'some value'],
        // ...
    ];
}