2014-01-13 49 views
2

我創建了一個只包含zip文件的上下文。我需要能夠只允許在這種情況下的zip文件擴展名。我能夠創建一個擴展到FileProvider的自定義提供程序,但在設置此提供程序允許的特定擴展時遇到問題。Sonata Media Bundle - 如何限制特定上下文的文件擴展名?

我跟着這個帖子:sonata-media-bundle-how-to-write-custom-provider

當我設置的配置如下:

providers: 
    custom: 
     allowed_extensions: ['zip'] 
     allowed_mime_types: ['application/zip','application/x-zip'] 

的Symfony拋出一個錯誤:

Fatal error: Uncaught exception 'Symfony\Component\Config\Definition\Exception\InvalidConfigurationException' with message 'Unrecognized options "custom" under "sonata_media.providers"' 
+0

我創建了SVG提供程序一次,並在配置我有限制擴展你可以看看這個答案更好的主意http://stackoverflow.com/a/32847495/853360 –

回答

1

管理過會後找到它媒體包代碼。

允許的擴展和MIME類型是提供者的6個和7個參數。以下是我的service.yml文件的副本,用於聲明自定義提供程序服務。

services: 
sonata.media.provider.custom: 
    class: Application\Sonata\MediaBundle\Provider\CustomProvider 
    tags: 
     - { name: sonata.media.provider } 
    arguments: 
     - sonata.media.provider.custom 
     - @sonata.media.filesystem.local 
     - @sonata.media.cdn.server 
     - @sonata.media.generator.default 
     - @sonata.media.thumbnail.format 
     - ['zip', 'foo'] 
     - ['application/zip', 'foo/bar'] 
相關問題