我已经为cakephp安装了上传插件。 我一直试图找出如何将缩略图路径或缩略图名称存储在名为Portfolio的名为image_thumb的字段中。我想以与存储原始图像名称相同的方式存储它。图像的dir选项在那里,但缩略图dir没有这样的东西。
我使用上传插件的模型代码是:
public $actsAs = array(
'Upload.Upload' => array(
'image' => array(
'fields' => array(
'dir' => 'image'
),
'thumbnailSizes' => array(
'small' => '640x480',
),
'thumbnailName' => '{filename}_{size}_{geometry}',
'thumbnailPath' => '{ROOT}webroot{DS}img{DS}{model}{DS}Thumbnails{DS}'
)
)
);
控制器,添加功能,插件发生在哪里我假设(虽然我没有改变任何东西, 它是烘焙代码)
public function admin_add() {
$this->layout='admin';
if ($this->request->is('post')) {
$this->Portfolio->create();
if ($this->Portfolio->save($this->request->data)) {
$this->Session->setFlash(__('The portfolio has been saved.'));
return $this->redirect(array('action' => 'index'));
} else {
$this->Session->setFlash(__('The portfolio could not be saved. Please, try again.'));
}
}
}
当图像路径上传到数据库中时,图像本身和缩略图将保存在我的应用程序的指定目录中。但我想在数据库中保存缩略图的路径,以便我可以在我的视图中使用它。
非常感谢帮助,因为我对cakephp这么新,我必须在很短的时间内搞清楚。 感谢。
答案 0 :(得分:0)
你可能在这里犯了错误
'fields' => array(
'dir' => 'image_thumb' //table field name
),