문제

CakePHP에는 업로드라는 테이블이없는 모델이 있습니다. 이 모델에서 Source_id라는 필드에 대한 검증이 있습니다.

이 데이터를 멋진 $ $를 구축하는 양식이 있습니다.

$this->data['Upload']['source_id']

그러나 내가 설정 한 검증 규칙은 전혀 실행되지 않는 것 같습니다. 이 검증 규칙이 작동하는 다른 모델 에서이 검증 규칙을 복사 했으므로 작동한다고 확신합니다.

var $validate = array(
        'source_id' => array(
        rule' => 'numeric',
        'required' => true,
        'allowEmpty' => false,
        'message' => 'Error!.'
    )
);

데이터베이스 테이블이없는 모델의 필드를 검증 할 수 없습니까?

양식은 업로드 모델을 사용하고 다른 컨트롤러 동작 방법에 제출합니다.

Cakephp 1.2, php/mysql 5, xampp.

도움이 되었습니까?

해결책

난 멍청이야. save () 또는

$this->Upload->set($this->data);
$this->Upload->validates();

지금 일하고 있습니다.

다른 팁

당신은 또한 수 가짜 $ _schema 배열을 설정하여 데이터베이스 구조 :

var $useTable = false;

var $_schema = array(
    'name'   =>array('type'=>'string', 'length'=>100), 
    'email' =>array('type'=>'string', 'length'=>255), 
    'phone' =>array('type'=>'string', 'length'=>20),
    'subject'  =>array('type'=>'string', 'length'=>255),
    'message'  =>array('type'=>'text')
);
라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top