ファイルのアップロード時に Cake 2.3.8 で検証を実行して、PDF のみをアップロードできるようにしようとしています。私は大まかにこのチュートリアルに基づいています。
私のフォームは、入力の横にアスタリスクを表示しています。モデルから検証を削除すると、アスタリスクが消えます。これは、検証のために入力を「見る」ことを意味すると思いますが、カスタム検証でさえトリガーされない理由がわかりません。
フォームはこちら
echo $this->Form->create('Upload', array('type' => 'file'));
echo $this->Form->input('file_upload', array('type' => 'file'));
echo $this->Form->input('file_title');
echo $this->Form->end(__('Upload File!', true));
これが私の Upload モデルのコードです
public function checkUpload(){
echo "test"; //check to see if it reaches this...not displaying
return false; //the error message should be set just for testing, it's not displaying though
}
public $validate = array(
'file_upload' => array(
'extension' => array(
'rule' => array('extension', array('pdf')),
'message' => 'Only pdf files',
),
'upload-file' => array(
'rule' => array('checkUpload'),
'message' => 'Error uploading file'
)
)
);