2010-02-20 12 views
9

Cosa fa esattamente Django con MEDIA_ROOT? Non l'ho mai capito Dal momento che Django non utilizza i supporti statici e devi installare apache o qualcosa di simile, perché è importante in quale directory si trova?Cosa fa Django con `MEDIA_ROOT`?

risposta

9

Non sei l'unico che si chiede; controlla Django ticket #10650. Sulla base dei commenti di sviluppatori Django lì, credo che questo praticamente riassume ciò MEDIA_ROOT è utilizzato per:

Purtroppo, Django è anche colpa di essere troppo vaga nei suoi documenti su ciò che root_supporto e MEDIA_URL sono usato per. La ricerca tramite il codice di Django conferma che MEDIA_ROOT & MEDIA_URL sono utilizzati per il caricamento di file e che MEDIA_URL viene fornito come un valore per i modelli tramite i processori di contesto predefiniti (disponibile quando si utilizza RequestContext ??).

+1

Questo è un ottimo lavoro di ricerca - peppergrower. – Jibin

2

Sembra essere utilizzato da alcune classi in Django come predefinito - ad esempio, FileSystemStorage lo utilizza come posizione predefinita per archiviare i file.

2

Quando si crea un modello con gli attributi ImageField o FileField, è necessario passare l'argomento upload_to. Questo è un percorso relativo verrà aggiunto al tuo percorso MEDIA_ROOT e ci sarà salvare e recuperare i file.