#django #tinymce
#django #tinymce
Вопрос:
Я получаю 404 на своем локальном сервере при попытке загрузить файлы TinyMCE JS. Я использую django-mce
пакет, я загрузил последние файлы mce и добавил их в свой media
каталог. При попытке использовать их с формой возвращается 404.
forms.py
from django import forms
from tinymce.widgets import TinyMCE
class post(forms.Form):
description = forms.CharField(widget=TinyMCE(attrs={'cols': 80, 'rows': 30}))
settings.py
# File Management
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
# tinymce
TINYMCE_JS_URL = os.path.join(MEDIA_ROOT, "js/tiny_mce/tinymce.min.js")
TINYMCE_JS_ROOT = os.path.join(MEDIA_ROOT, "js/tiny_mce")
TINYMCE_DEFAULT_CONFIG = {
'theme': 'advanced',
'relative_urls': False,
'plugins': 'media',
'theme_advanced_buttons1': 'bold,italic,underline,bullist,numlist,|,media,link,unlink,image',
}
Крошечные js-файлы mce хранятся вместе proj/media/js/tiny_mce
с базовым js-файлом, сохраненным как tinymce.min.js
base.html
<head>
...
{{ form.media }}
...
</head>
Редактор работает (в отношении столбцов и строк), но отсутствует панель инструментов. Также возвращается локальный сервер GET proj/media/js/tiny_mce/tinymce.min.js HTTP/1.1" 404 3024
, и на данный момент я в недоумении. Любая помощь приветствуется.
Комментарии:
1. Почему вы добавляете к нему префикс
proj/
? ВашMEDIA_URL
параметр не содержит ничего подобного.2. @IvanStarostin
BASE_DIR
является абсолютнымUsers/name/Desktop/proj
, поэтому мой медиа-корень должен бытьUsers/name/Desktop/proj/media
3.
GET proj/media/js/tiny_mce/tinymce.min.js
->GET media/js/tiny_mce/tinymce.min.js
Я говорю о MEDIA_URL.4. @IvanStarostin, это не сработало, но это вывело меня на правильный путь, он хотел загружаться из static, когда я перестал использовать
os.path.join
путь к мультимедиа, поэтому я просто создал статические файлы для tinymce, а затем использовал их в качестве своего URL-адреса tinymce и root, и это сработало отлично. Если вы хотите добавить это в качестве ответа, я приму это, спасибо!