Django Tinymce JS не загружается - PullRequest
       25

Django Tinymce JS не загружается

2 голосов
/ 20 февраля 2011

привет всем Я пытаюсь интегрировать tinymce в административную страницу Django. Я установил модуль django-tinymce (http://code.google.com/p/django-tinymce/) Я следовал инструкциям, поэтому это мои файлы:

settings.py

INSTALLED_APPS = (
    ...
    'tinymce',
)


TINYMCE_DEFAULT_CONFIG = {
    'plugins': "table,paste,searchreplace",
    'theme': "advanced",
}
TINYMCE_SPELLCHECKER = False
TINYMCE_COMPRESSOR = False

url.py

urlpatterns = patterns('',
    # Example:
    # (r'^uboPy/', include('uboPy.foo.urls')),

    # Uncomment the admin/doc line below to enable admin documentation:
    # (r'^admin/doc/', include('django.contrib.admindocs.urls')),

    # Uncomment the next line to enable the admin:
        (r'^admin/', include(admin.site.urls)),
        (r'^tinymce/', include('tinymce.urls')),
)

У меня есть jin от tinymce в папке в корне с именем media/js В модели у меня есть эта линия: text = tinymce_models.HTMLField()

когда я запускаю сервер, я не получаю сообщение об ошибке, но когда я захожу в область администратора моей модели, tinymce не загружается. С firebug я вижу, что библиотека tinymce выдает ошибку 404, но путь правильный .. у меня есть проблема в моем url.py?

спасибо за помощь

Ответы [ 2 ]

1 голос
/ 27 февраля 2014

Я обнаружил, что документация на django-tinymce устарела, то есть частично неверна.

Я обнаружил, что разные версии пакетов tinymce и django-tinymce несовместимы.

Я решил это, добавив некоторые переменные в мой проект / settings.py и изменив каталог и имена файлов tinymce.

django-tinymce urls.py содержал несколько жестко закодированных путей, которые предполагали, что каталоги назывались "tiny_mce", когда на самом деле они назывались "tinymce", поэтому я должен был их переименовать или изменить django-tinymce urls.py .

# project setting.py
STATIC_ROOT = os.path.join(BASE_DIR, "static")
STATIC_JS_DIR = os.path.join(STATIC_DIR, "js")
TINYMCE_JS_ROOT = os.path.join(STATIC_JS_DIR, "tiny_mce")
TINYMCE_JS_URL = os.path.join(TINYMCE_JS_ROOT, "tiny_mce.js")
#TINYMCE_JS_ROOT = os.path.join(STATIC_JS_DIR, "tiny_mce")
#TINYMCE_JS_URL = os.path.join(TINYMCE_JS_ROOT, "tiny_mce.js")
1 голос
/ 20 февраля 2011

Вы просто помещаете папку в корневой каталог вашего проекта с именем media/js?Это на самом деле нужно как-то подать с URL-адреса.

Файл JavaScript загружается через ваш браузер, поэтому он должен быть доступен в Интернете, где живут все остальные ваши медиафайлы.Эта часть не имеет ничего общего с django, поэтому не следует ожидать ошибок или проблем с URL.

После того, как вы решили эту часть, укажите URL, по которому можно получить доступ к файлу, с помощью параметра настроек TINYMCE_JS_URL,

Например, на моей установке js: ..

TINYMCE_JS_URL = '/media/js/tiny_mce/tiny_mce.js'

С помощью firebug я вижу, что библиотека tinymce выдает ошибку 404, но путь правильный ..

Вы говорите, что можете посетить этот URL-путь и загрузить файл JS?Я говорю следующее: как правильный путь, если это 404?

...