首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >编辑视图上的cakephp2.X验证

编辑视图上的cakephp2.X验证
EN

Stack Overflow用户
提问于 2015-11-26 16:14:56
回答 2查看 35关注 0票数 2

当我创建一个项目时,图像上传验证工作正常,但当我编辑项目时,它总是要求我再次上传文件。使用firebug,我检查了img_upload输入,它的值是"Lighthouse.jpg“。

我该如何克服这个问题呢?

在我的模型验证下面

代码语言:javascript
代码运行次数:0
运行
复制
     'img_upload' = array(
         'extension' => array(
           'rule' => array('extension', array('png','jpg','jpeg')),
           'message' => "Only png,jpg,jpeg Files Allowed",
         )
      );

下面是我的html代码:

代码语言:javascript
代码运行次数:0
运行
复制
echo $this->Form->create('Project',array('type'=>'file'));
echo $this->Form->input('img_upload'); 
echo $this->Form->end('Submit');
EN

回答 2

Stack Overflow用户

发布于 2015-11-26 17:10:44

您当前的规则是将文件上载设置为必填字段,因此如果文件在编辑时未上载,将会出错。尝试将'allowEmpty' => true添加到您的验证规则以防止需要它:-

代码语言:javascript
代码运行次数:0
运行
复制
 'img_upload' = array(
     'extension' => array(
         'rule' => array('extension', array('png','jpg','jpeg')),
         'message' => "Only png,jpg,jpeg Files Allowed",
         'allowEmpty' => true,
     ) 
 );
票数 0
EN

Stack Overflow用户

发布于 2015-11-26 23:10:53

您好,尝试将您的输入代码从

代码语言:javascript
代码运行次数:0
运行
复制
echo $this->Form->input('img_upload'); 

到这个

代码语言:javascript
代码运行次数:0
运行
复制
echo $this->Form->input('img_upload','type'=>'file'); 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33933507

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档