1

So I am doing a form using the kartik form builder and I am using the input_widget kartik\date\datepicker. When I use the datepicker only it submits but when I go to the item view the date is set like 30/11/-0001. The solution I found when I first had this problem was using not only the date picker but also the date control (also from kartik). But at that time I was using the default yii form and it was possible to use multiple widgets in a single attribute. Now im using the kartik form builder and i cant set more than one widget and its class. How can I do to use both date picker and date control in a single attribute at kartik's form build or, if anyone knows, how to solve this problem without having to add the date control?

before it was like:

<?= $form->field($model, 'validadeCertificado')
    ->textInput() 
    ->widget(DatePicker::classname(), [

        'pluginOptions' => [
            'autoclose'=>true,
        ]
    ])
    ->widget(DateControl::className(), [
        'type'=>DateControl::FORMAT_DATE,
        'ajaxConversion'=>false,
        'widgetOptions' => [
            'pluginOptions' => [
                'autoclose' => true,
                'language' => 'pt-BR',
            ]
        ]
    ]);    
?>

now it is like:

echo Form::widget([       // 3 column layout
    'model'=>$model,
    'form'=>$form,
    'columns'=>12,
    'compactGrid'=>true,
    'attributes'=>[
        'validadeCertificado'=>[
            'type'=>Form::INPUT_WIDGET,
            'widgetClass'=>'\kartik\date\DatePicker',
            'options' => [
                'pluginOptions' => [
                    'format' => 'dd-mm-yyyy',
                    'autoclose'=>true,
                    'todayHighlight' => true
                ],
            ],
            'columnOptions'=>['colspan'=>3],
        ],
       <!--(other attributes)-->
    ]
]);```

I just wanted the date to be correctly inserted in the mysql database but it is inserted into the database as 0000-00-00

Heeeelp

0 Answers0