2017-07-19 2 views
0

Je vais avoir du mal à afficher le contenu multimédia sur le système local .. le problème est que:Django1.11 - Afficher les médias sur localhost

{{ producer.img.url }}

me donne un chemin d'URL par rapport à la page I » m parcourant, donc il échoue toujours à localiser le fichier. Il imprime en fait quelque chose comme:

media/media/djprofiles/john_0VtCrdA.jpg 

qui échoue de toute évidence (notez l'initiale "/" manquante).

Après docs Django, ajoutai-je dans mon urls.py:

urlpatterns = [ 
    url(r'^i18n/', include('django.conf.urls.i18n')), 
] 
urlpatterns += i18n_patterns(
    ... 
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

et settings.py est comme suit:

MEDIA_ROOT = os.path.join(BASE_DIR, "media") 
MEDIA_URL = 'media/' 

Le champ img est défini dans modèles .py comme suit:

img = models.ImageField(upload_to=settings.MEDIA_URL + 'djprofiles') 

Je sais qu'il y a déjà beaucoup de questions relatives à l'affichage des médias sur le système local, mais aucune ne semble me fournir une solution de travail.

Répondre

0

avez-vous essayé

MEDIA_URL = '/media/' 

dans settings.py?

+0

oui, cela faisait partie de la solution, avec 'img = models.ImageField (upload_to = 'djprofiles', null = vrai, vide = vrai)' – davideghz