Django erkennt nicht die MEDIA_URL Weg?
So, ich bin versucht zu bekommen, TinyMCE und läuft auf einem einfachen view-Funktion, aber der Weg zu den tiny_mce.js Datei wird nach oben geschraubt. Die Datei befindet sich unter /Users/home/Django/tinyMCE/media/js/tiny_mce/tiny_mce.js. Ich glaube, dass /media/js/tiny_mce/tiny_mce.js richtig ist, wie der Entwicklungs-server hat keinen Zugriff auf Dateien oberhalb der Wurzel des Django-Projekt-Ordner. In der gerenderten Seite, es sagt der debugger, dass die javascript-Datei nicht gefunden wurde. Dies ist, weil es versuchte, sich durch /js/tiny_mce/tiny_mce.js ohne auf /media/Teil des namens.
Ohnehin, hier ist das script-snippet für den javascript-Code in eine Vorlage mit dem Namen 'simple.html'. <script type="text/javascript" src="{{ MEDIA_URL }}/js/tiny_mce/tiny_mce.js"></script>
<script type="text/javascript">
tinyMCE.init({
mode : "textareas",
theme : "simple"
});
</script>
Und das ist, was die wichtigen Teile meiner Einstellungen ist wie.
MEDIA_ROOT = os.path.join(_base, 'media')
MEDIA_URL = 'http://127.0.0.1:8000/media/'
ADMIN_MEDIA_PREFIX = '/media/'
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'tinymce',
)
- Haben Sie sichergestellt, dass Sie auf der Durchreise sind
MEDIA_URL
im Rahmen dieser Vorlage? - Ich habe nicht vor, aber jetzt ich bin. Noch immer eine "Seite fehlt" Fehler obwohl.
- Ich habe das Gefühl, dass ich möglicherweise beschädigt, die Django-Modul installiert als ich einige extra Sachen für Python2.5 über fink. Ich bin goign zu installieren Django und sehen, ob das funktioniert alles.
- Nope, die gleiche Ergebnisse.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Können Sie entweder passen Sie die Vorlage manuell, wie andere vorgeschlagen haben, oder stellen Sie sicher, dass Sie mit einem RequestContext anstelle von normalem Rahmen. RequestContext wird automatisch eingetragen, dem Zusammenhang mit bestimmten Variablen, einschließlich MEDIA_URL und andere Medien-im Zusammenhang diejenigen.
Beispiel aus den docs:
Sieht es aus wie deine, sind mit der debug-server (Ihre url http://127.0.0.1:8000/...) . Haben Sie die statischen dienen in Ihrer urls.py?
Den 'show_indexes':True-Optionen machen es möglich, durchsuchen Sie Ihre Medien. Gehen Sie zu Ihrem medias root http://127.0.0.1:8000/media/ und sehen, es gibt etwas
'show_indexes':True
. Danke!!!Sieht es aus wie ars beantwortet hat Ihre real Frage... Aber du wirst auf ein anderes problem:
MEDIA_URL
muss verschiedenen vonADMIN_MEDIA_PREFIX
. Wenn Sie nicht, dieADMIN_MEDIA_PREFIX
Vorrang. Ich in der Regel dieses Problem beheben, indem ändernADMIN_MEDIA_PREFIX
zu/admin-media/
.Haben Sie die media-Kontext-Prozessor in deinen Einstellungen?
Könnten Sie auch versuchen, indem Sie den folgenden in Ihre Einstellungen, um zu sehen, wenn die debug-Meldungen alles offen:
Lesen Sie bitte das offizielle Django-DOC sorgfältig und Sie werden finden Sie die meisten fit Antwort.
Die beste und einfachste Weg, dies zu lösen, ist wie folgt.
Den zugehörigen url ist: https://docs.djangoproject.com/en/1.5/howto/static-files/#serving-files-uploaded-by-a-user
Vielen Dank für Eure Hilfe alle. Ich war in der Lage, es zu lösen, als
settings.py -->
urls.py -->
index.html -->
Wieder, vielen Dank, ich werde verrückt versucht herauszufinden, wie all dies zu tun. Diese Lösung funktionierte für mich auf einer Django-version 1.2.5 Development-server mit Ubuntu 10.04.
Ich hatte ein ähnliches problem,
Ich habe eine one-page-app und ich hatte Anscheinend ein newbie Fehler gemacht, dass django vermisse meine media-Pfad hatte ich dieses:
stattdessen:
den fehlenden
$
meine url-Muster vermisse meine media urlWar ich auch das gleiche problem, so habe ich es getan.
Wenn Sie mit einem FileField in Ihrer model-Klasse statt MEDIA_URL verwenden .url-Mitglied Zugriff auf den url Ihrer Datei.
ZB: sowas
hier file_name ist der FileField in der model-Klasse.