我正在使用上传插件2.0(https://github.com/josegonzalez/upload),我在填充名称字段方面遇到了一些麻烦。
我的表单有一个名称字段的隐藏输入字段。
<?php echo $this->Form->create('Image', array('type' => 'file')); ?>
<fieldset>
<legend><?php echo __('Add Image'); ?></legend>
<?php
echo $this->Form->input('animal_id');
echo $this->Form->input('name', array('type' => 'hidden'));
echo $this->Form->input('attachment', array('type' => 'file'));
echo $this->Form->input('dir', array('type' => 'hidden'));
echo $this->Form->input('type', array('type' => 'hidden'));
echo $this->Form->input('size', array('type' => 'hidden'));
echo $this->Form->input('active', array('type' => 'hidden'));
?>
</fieldset>
<?php echo $this->Form->end(__('Submit')); ?>
我正在使用maodel的$ actAs数组中的字段行为:
'fields' => array(
'dir' => 'dir',
'name' => 'name',
),
文档建议创建“名称”字段,但由于它没有像大小/类型字段那样自动填充,我必须遗漏一些东西。我只是希望它是最后没有扩展名的文件名(即jpg,.gif)。
答案 0 :(得分:1)
在您的控制器中,您可以使用pathinfo
public function add(){
//...
$path = $this->request->data['Image']['name'];
$file_info = pathinfo($path);
if(isset($file_info['filename'])){
$this->request->data['Image']['name'] = $file_info['filename'];
}
//....
}