【问题标题】:how to use Gaufrette Stream Wrappers?如何使用 Gaufrette Stream Wrappers?
【发布时间】:2014-02-24 06:24:01
【问题描述】:

如果我在 symfony2 config.yml 中定义如下流包装器:​​

knp_gaufrette:
    adapters:
        my_drive:
            local:
                directory: %my_drive_path%
                create:     true
    filesystems:
        user_fs:
            adapter:    my_drive
            alias:      my_drive_filesystem
    stream_wrapper:
        protocol: data

如何在我的控制器中使用它来下载文件?

我有这样的事情:

$response = new BinaryFileResponse("data://user_fs/" . $key);

所以我使用地址调用我的文件:"data://user_fs/" 我可以将它更改为不使用它,因为如果我在配置中更改名称,我还必须在我的控制器中更改它。我只想在一个文件中管理它(配置)

【问题讨论】:

    标签: symfony stream gaufrette


    【解决方案1】:

    您可以在parameters.yml 中将路径定义为参数:

    parameters:
        data_protocol: data
        data_filesystem: user_fs
        data_path: "%data_protocol%://%data_filesystem%/"
    

    并从容器中获取:

    $path = $this->get('system_container')->getParameter('data_path')
    $response = new BinaryResponse($path . $key);
    

    【讨论】:

      猜你喜欢
      • 2016-06-10
      • 1970-01-01
      • 1970-01-01
      • 2014-02-11
      • 1970-01-01
      • 2017-08-13
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多