Comments (4)
i think because in the tutorial i do not use the cmf_media_download_file function but just a LiipImagineBundle filter. if you want download to work, you need to configure the base path of media to /cms
. we don't do this by default because it exposes every file available anywhere for download, if the user guesses the node path. if you are sure this is no problem, or have your own protection, you can change it but by default we want to play safe.
the alternative would be to use /cms/media as the media store and have a reference from your document to the file that is at /cms/media.
from media-bundle.
Thanks for the feedback, @dbu.
Exposing the entire tree might not be such a good idea, so I think it's better to create my own route and controller to serve those files...
- Create a class BrochureFile that extends File
- Create a route for the file (ie. /cms/routes/en/product1/brochure.pdf)
- Use controller_by_class to point the BrochureFile objects to a controller that can serve these files
What do you think ? Maybe this is a bit overkill and I may need a more generic implementation...
from media-bundle.
if you have a Product document that usually has a brochure attached, you could also do your own controller that expects a Product document at the path and then sends a download for the brochure child document if its present. unless you need additional fields on just the Brochure (or can have several brochures for one product) this would seem easier and more elegant to me.
and you could do some thinking how to best avoid duplicate code. maybe a separate media manager instance that is configured on the root path, and extend the FileController so that you can call downloadAction with the brochure path of the Product document.
from media-bundle.
OK, thanks!
from media-bundle.
Related Issues (20)
- use MediaBundle twig functions HOT 1
- Changing Media entity twice in same request is trying to delete directory HOT 5
- Can we use S3DataStore with Jackrabbit implementation for media bundle? HOT 1
- FileController can't handle file name with Chinese character HOT 3
- Symfony 3.x compatibility HOT 2
- Could not load type "cmf_media_image" HOT 2
- unimplemented getParent method HOT 1
- the future of this bundle
- Add new File structure HOT 1
- Hierarchy vs. Hierarchy HOT 1
- Configuration Issue: "There is no extension able to load the configuration for cmf_media" HOT 4
- Integration with Entities: Project Example
- PHP Fatal error Symfony\Cmf\Bundle\MediaBundle\Doctrine\Phpcr\Directory HOT 1
- Unknown "cmf_media_display_url" function. HOT 2
- ChildrenCollection of medea files fails HOT 1
- Fix SonataMedia integration
- Do not use deprecated method HOT 1
- Automaticially add parent document for collection fresh collection items
- Symfony\Cmf\Bundle\MediaBundle\Adapter\ElFinder\PhpcrDriver::$options must be protected or weaker HOT 4
- Attempted to load class "ElFinderVolumeDriver" from namespace "FM\ElFinderPHP\Driver" HOT 4
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from media-bundle.