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.
oui, cela faisait partie de la solution, avec 'img = models.ImageField (upload_to = 'djprofiles', null = vrai, vide = vrai)' – davideghz