存储可上载的Doctrine扩展的相对路径

时间:2014-06-25 14:18:53

标签: php symfony doctrine-orm doctrine-extensions doctrine-uploadable

有没有办法让Doctrine Uploadable扩展存储相对于数据库中目录的路径?

我们使用Capistrano来管理我们服务器上的版本,因此在上传文件时,存储的路径如下:/var/www/sitename/releases/20140625151300/web/uploads/$filename。虽然文件本身是安全的(上传是一个符号链接),但是当删除版本时,路径就会破坏。

例如,存储的路径可能只是文件名或相对于%kernel.root_dir%

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题而不是深入了解监听器(我认为这是另一种可能性)我在参数文件中设置了路径,然后在stof_doctrine_extensions部分引用了该参数。通过这种方式,它允许我拥有真正的路径,但允许每个版本的路径不同。

app/config/parameters.yml

parameters:
    ....
    acme.upload.path: '/The/Absolute/Path/app/Resources/files/uploads'
    ....

app/config/config.yml

stof_doctrine_extensions:
    ....
    uploadable:
        default_file_path: %acme.upload.path%
    ....

如果你没有使用stof套装,那么我假设你只是将参数作为calls之一传递给你的听众。

就像我说的那样,我很确定你能够进入听众并玩弄它,但我发现这是最简单的方法。