djangocms - bilder für content werden nicht angzeigt

Django, Flask, Bottle, WSGI, CGI…
Antworten
k.marco.1970
User
Beiträge: 46
Registriert: Mittwoch 25. Dezember 2013, 20:46

Hallo Forum,

wenn ich im Bearbeitungsmodus einer Seite des djangocms Bilder hochlade, werden sie nach der Veröffentlichung nicht angezeigt. Auf dem FTP-Server liegen die Bilder aber nach dem Upload.

Folgende Verzeichnisse und Einstellungen habe ich:

Nach dem Upload eine Bildes liegt es im ftp hier:
/home/myuser/django-env/~/html/media/cms_page_media/5/foto.jpg
Anmerkung: ich habe weder den ordner cms_page_media noch den ordner 5 erstellt und weiß nicht, weshalb er erstellt wurde.

in meiner settings.py steht Folgendes zu media:

Code: Alles auswählen

MEDIA_URL = '/cms_project/media/'
ich habe es auch schon mit Folgendem versucht:

Code: Alles auswählen

MEDIA_URL = '/home/myuser/django-env/~/html/media/'
beides hat nicht funktioniert.

Im Backend des djangocms finde ich unter der Seite auf der das Bild hochgeladen wird folgenden Hinweis wo das Foto liegt:
Derzeit: cms_page_media/5/foto.jpg

Kann mir jemand sagen, was ich falsch mache?

Viele Grüße
Marco
Sirius3
User
Beiträge: 17711
Registriert: Sonntag 21. Oktober 2012, 17:20

die Daten werden unter dem Verzeichnis abgelegt, das durch MEDIA_ROOT angegeben wird. MEDIA_URL ist dagegen die URL, unter dem die Dateien vom Browser angesprochen werden. Es macht also keinen Sinn, das Verzeichnis in MEDIA_URL einzutragen. Dass die Dateien in MEDIA_ROOT unter der Url MEDIA_URL verfügbar sind, dafür mußt Du Deinen Server schon selbst einrichten. Das wird aber in der Django-Dokumentation ausführlich beschrieben.
k.marco.1970
User
Beiträge: 46
Registriert: Mittwoch 25. Dezember 2013, 20:46

Hallo Sirius3,
danke für den Hinweis. Inzwischen habe ich verstanden, wie ich organisiere, wo Uploads abgelegt werden. Ich werde aber aus MEDIA_URL nicht schlau. In allen URLS der Seiten steht ja immer was anders. Z. B. Impressum oder Ueber-Uns oder was auch immer. Und auf allen Seiten können ja z. B. von mir in Artikeln Bilder hochgeladen werden, die dann angezeigt werden sollen. Was muss nun in der MEDIA_URL drinstehen, damit die Bilder auch angezeigt werden?
Ich würde mich sehr über ein Beispiel freuen.
In der Doku zu django habe ich jeweils nur gefunden, was der Unterschied zwischen MEDIA_URL und MEDIA_ROOT ist, aber nicht, wie ich nun über MEDIA_URL meine Bilder sichtbar mache.
Marco
Antworten