我正在尝试使用我的表单上传整个文件夹,我发现可以通过'webkitdirectory'进行一些Google研究。但是,对于如何将此选项添加到构建网站的CakePHP表单中似乎没有什么帮助?
我认为如果他们坚持整个文件夹上传(我认为在网站上不是一个好主意)我可能要做的事情。构建是使用标准的html表单而不是使用CakePHP助手构建它?
关于我如何做到这一点的任何想法?
如果不是,它可能会在新的CakePHP版本中添加!
非常感谢
格伦。
答案 0 :(得分:1)
Form
助手应该能够创建适当的输入字段。这是一些示例代码:
echo $this->Form->input('file', array
(
'type' => 'file',
'name' => 'data[Model][file][]',
// would work too, but the file data would then
// be found in CakeRequest::$params['form']
// 'name' => 'file[]',
'multiple' => true,
'webkitdirectory' => 'webkitdirectory'
));
它会创建以下HTML:
<div class="input file">
<label for="ModelFile">File</label>
<input type="file" name="data[Model][file][]" multiple="multiple" webkitdirectory="webkitdirectory" id="ModelFile"/>
</div>
请注意'webkitdirectory' => 'webkitdirectory'
的使用,这是必要的,因为Form
帮助程序无法将webkitdirectory
识别为布尔属性,即使用true
会导致生成属性值为1
,有效,但AFAIK实际上无效。
另见http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html#FormHelper::input