2014-04-28 77 views
1

我需要有郵政編碼的驗證標準。驗證應確保郵編的長度爲4及其所有數字。在我的mySQL數據庫中,postcode被設置爲VARCHAR 4和Null。在我的模型的代碼如下:驗證cakePHP

'customer_postcode' => array(
       'maximum' => array(
        'rule' => array('numeric'), 
        'message' => 'Enter valid postcode' 

       ), 
       'minimum' => array(
        'rule' => array('minLength','4'), 
        'message' => 'Minimum 4 characters long' 

       ), 
       ), 

但是當過我嘗試添加一個客戶沒有郵政編碼,它出現說:「請輸入有效的郵政編碼」,即使它被設置爲空在數據庫中。 我該如何解決這個問題?

回答

2

嘗試將allowEmpty設置爲true以接受空值as described in the CakePHP documentation

您的代碼可能是這樣的:

'customer_postcode' => array(
       'maximum' => array(
        'rule' => array('numeric'), 
        'message' => 'Enter valid postcode', 
        'allowEmpty' => true  
       ), 
       'minimum' => array(
        'rule' => array('minLength','4'), 
        'message' => 'Minimum 4 characters long' 
       ), 
       ), 
+0

謝謝@Karol – user3579801