2016-04-28 12 views
1
私のフォームで

Yii2:2つの日付を比較するには?

<?= $form->field($model, 'check_in')->input('date', ['required' => false])->label(false); ?> 
<?= $form->field($model, 'check_out')->input('date', ['required' => false])->label(false); ?> 

私はこの二つのフィールドを検証する必要がある2つのフィールドcheck_incheck_outがあり、check_outはこれを行う方法をcheck_in日付より小さくすべきではありませんか?

答えて

2

あなたは、モデルのrules機能でcompare validatorを使用することができます。これは$model->check_in <= $model->check_out

+0

私の前にこれをチェックしてください。 – soju

+0

素晴らしい正直:) – JKLM

+0

:)ありがとうございます。 – topher

3

に解決されます

['check_in', 'compare', 'compareAttribute' => 'check_out', 'operator' => '<='], 

あなたは単にcompareバリ使用することができます

// first validate date format 
[['check_in', 'check_out'], 'date'], 
// then compare attributes 
['check_out', 'compare', 'compareAttribute' => 'check_in', 'operator' => '>'], 

もっと読むについてcompare validatorを。