我正在尝试使用食谱示例来说明如何使用symfony2上传fiels:http://symfony.com/doc/2.0/cookbook/doctrine/file_uploads.html
问题是我无法获取web文件夹的路径。
这里有一些细节:在我的网络文件夹中,我有一个这样的结构:
/web
/bundles
/sciforumversion2
/images
从实体中,我试图获得文件夹路径并将我的图像保存在/images文件夹中
为此,我使用:
protected function getUploadRootDir()
{
// the absolute directory path where uploaded
// documents should be saved
return __DIR__ . '/../../../../web/'.$this->getUploadDir();
}
protected function getUploadDir()
{
// get rid of the __DIR__ so it doesn't screw up
// when displaying uploaded doc/image in the view.
return 'sciforumversion2/bundles/images';
}
但我得到了一个无法创建目录的例外:
Unable to create the "/home/milos/workspace/conference2.0/src/SciForum/Version2Bundle/Entity/../../../../web/sciforumversion2/bundles/images/conference" directory
任何关于我如何获得网络文件夹url以及为什么symfony食谱提出的解决方案不起作用的想法都是非常受欢迎的。
非常感谢。非常感谢。
路径似乎是正确的。
也许你应该给它正确的权限。
先试试这个:
chmod 777 /home/milos/workspace/conference2.0/src/SciForum/Version2Bundle/Entity/../../../../web/sciforumversion2/bundles/images/
如果这样做有效,那就是许可问题。使用将所有者和组设置为www数据
chown www-data:www-data /home/milos/workspace/conference2.0/src/SciForum/Version2Bundle/Entity/../../../../web/sciforumversion2/bundles/images/
chmod 755 /home/milos/workspace/conference2.0/src/SciForum/Version2Bundle/Entity/../../../../web/sciforumversion2/bundles/images/