0

symfony2 でフィールドをアップロードする方法について、クックブックの例を使用しようとしています: http://symfony.com/doc/2.0/cookbook/doctrine/file_uploads.html

問題は、Web フォルダーのパスを取得できないことです。

ここにいくつかの詳細があります: 私の web フォルダーには、次のような構造があります。

/web
    /bundles
        /sciforumversion2
            /images

そしてエンティティから、II はフォルダー パスを取得し、イメージを /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 に答える