views:

415

answers:

3

What does Django do with MEDIA_ROOT exactly? I never understood it. Since Django itself doesn't serve static media, and you have to set up apache or something similar for it, why does it care in which directory it sits?

+1  A: 

It appears to be used by some classes in Django as a default -- for instance, FileSystemStorage uses it as the default place to store files.

Michael Williamson
A: 

It's the absolute path to the directory that holds media: images, sounds, css files, js files.

Juanjo Conti
+3  A: 

You're not the only one who wonders; check out Django ticket #10650. Based on the comments by Django developers there, I think this pretty much sums up what MEDIA_ROOT is used for:

Unfortunately, Django is also at fault for being far too vague in its docs about what MEDIA_ROOT and MEDIA_URL are used for. Searching through Django's code confirms that MEDIA_ROOT & MEDIA_URL are used for file upload, and that MEDIA_URL is provided as a convenience to templates via the default context processors (available when using RequestContext??).

peppergrower