2012-07-31 5 views
0

양식의 전자 메일 입력에 대한 유효성 검사가 있지만 일부 연락처 정보에 전자 메일 주소가 없기 때문에 문자열에 대한 예외를 만들고 싶습니다. 나는 이것을하기 위해 전자 메일 유효성 검사를 제거 할 수 있지만 새로운 유효성 확인을 위해 유효성 검사를 원한다는 것을 알고 있습니다. 전자 메일 주소가없는 사용자는 이전 연락처 중 일부입니다. 따라서이 연락처를이 새로운 시스템에 추가하려면 예외가 필요합니다.Cakephp 전자 메일 입력 유효성 검사 예외

'email' => array(
     'email' => array(
      'rule' => array('email'), 
      'message' => 'Please enter a valid email address', 
      //'allowEmpty' => false, 
      //'required' => false, 
      //'last' => false, // Stop validation after this rule 
      //'on' => 'create', // Limit validation to 'create' or 'update' operations 
     ), 
     'uniqueEmail' => array(
      'rule'=>'isUnique', 
      'message' => 'This email has already been added' 
     ), 
    ) 

어떻게이 예외를 구현하고 어디에 않는 다음과 같이 모델의

내 현재 이메일 확인은?

도움이 될 것입니다. 감사!!

+0

1. 이메일이없는 이전 연락처는 이미 데이터베이스에 있습니까? 2. 이메일을 비워야 만하는 연락처와 그렇지 않은 연락처는 무엇이 다른가요? –

+0

@ omar.php 연락처가 데이터베이스에 없습니다. 그들은 서류상 기록에서이고 데이타베이스로 추가 될 필요가있다. 전자 메일을 비워 둘 수있는 연락처는 기존 연락처입니다. 그 (것)들의 수백이 있고 나는 그들의 이메일 주소를 요구해 위로 모두를 부르는 것이 현명하다고 생각하지 않는다. 그러나 그때부터 새로운 연락처는 이메일 주소를 제공해야합니다. – jase89

답변

1

'allowEmpty' => false 줄의 주석을 제거하고 true으로 변경하면 채워진 전자 메일은 빈 문자열로 제출할 수 있습니다.

+0

은 사용자가 이메일 주소를 입력하지 않고 양식을 제출하기를 원치 않으므로 예외를 만드는 또 다른 방법입니다. 비워두면 이메일 필드를 건너 뛸 수 있습니다. – jase89

+1

[사용자 정의 유효성 검사 규칙] (http://book.cakephp.org/2.0/en/models/data-validation.html#custom-validation-rules)을 사용할 수도 있고, 다음에 대한 전자 메일 유효성 검사 규칙을 제거 할 수도 있습니다. 이전 사용자. 내가 링크 된 페이지를 읽을 것을 제안한다. 유효성 검사 규칙은 CakePHP 2.2에서 매우 유연하다. – Dunhamzzz