我正在尝试在文件上传时使用 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));
这是我的上传模型中的代码
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'
)
)
);