0

我正在尝试使用食谱示例来了解如何使用 symfony2 上传文件:http: //symfony.com/doc/2.0/cookbook/doctrine/file_uploads.html

问题是我无法获取 web 文件夹的路径。

以下是一些细节: 在我的 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 

任何关于如何获取 web 文件夹 url 以及为什么 symfony 食谱提出的解决方案不起作用的想法都非常受欢迎。

非常感谢你。谢谢你。

4

1 回答 1

2

路径似乎是正确的。

可能你应该给它正确的权限。

先试试这个:

chmod 777 /home/milos/workspace/conference2.0/src/SciForum/Version2Bundle/Entity/../../../../web/sciforumversion2/bundles/images/

如果可行,那就是权限问题。使用以下命令将所有者和组设置为 www-data:

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/
于 2012-12-14T10:53:19.147 回答