2011-01-27 29 views

Respuesta

12

El MEDIA_ROOT es la ruta en el sistema de archivos al directorio que contiene sus medios estáticos.

La MEDIA_URL es la URL que hace que los medios estáticos sean accesibles a través de HTTP.

Los documentos: http://docs.djangoproject.com/en/1.2/ref/settings/#media-root

La idea principal es que sirven las cosas a través de Python + Django es caro. Dado que sus medios son estáticos, no necesita pagar ese costo, por lo que lo publica de manera diferente (por ejemplo, directamente a través de nginx o mediante un CDN). Sin embargo, aún necesita saber dónde se encuentran los medios en el sistema de archivos (por ejemplo, para cargar archivos) y cuál es la URL (por ejemplo, para poner en las plantillas). La configuración existe para unir todo eso.

+4

Lo único que queda para agregar a esto es que luego usa 'MEDIA_URL' para referenciar los archivos a través de sus URL y 'MEDIA_ROOT' para referenciarlos físicamente, es decir, mostrar una imagen en HTML' MEDIA_URLimages/myimage.png' se traduce como 'http: // myapp/media/images/myimage.png'; abrir una imagen para cambiar su tamaño 'os.path.join (MEDIA_ROOT, 'images/myimage.png')' se traduce en '/ path/to/myapp/media/images/myimage.png' –

Cuestiones relacionadas