2012-12-08 145 views
0

我想驗證dmy格式。這是我在我的模型中寫的:cakephp date'dmy'validdation is not working

'birthdate' => array(
    'date' => array(
     'rule' => array('date','dmy'), 
     'message' => 'Solo data valida', 
     'allowEmpty' => true, 
    ) 
) 

但是,當我提交表單時,出現錯誤。

+0

如何告訴我們您提交的內容,如何保存以及顯示的實際錯誤? – dogmatic69

+0

<?php echo $ this-> Form-> input('birthdate',array('label'=> false,'maxlength'=>'200','div'=> false,'id'=>'datepicker ','type'=>'text','placeholder'=>「GG-MM-AAAA」)); ?>這是輸入字段,但是當我提交日期例如02-02-1985時,它不會被驗證。它顯示消息'Solo data valida' –

回答

0

你應該驗證的一件事是「生日」的值直接在驗證之前。在調用$ this-> Model-> save或$ this-> Model-> validate之前,試着在你的控制器中調試$ this-> request-> data。在將它傳遞給驗證之前,您很可能正在轉換該日期值,因此可能會失敗。例如,我通常使用beforeSave和afterFind回調來轉換進入和來自MySQL的日期,或者你的appController或beforeFilter回調中有可能會無意中轉換數據的東西。