Не могу импортировать мой собственный файл css в TINYMCE_DEFAULT_CONFIG = {'content_css': - PullRequest
0 голосов
/ 02 апреля 2019

Как я уже сказал в заголовке, я не могу импортировать свой файл css в переменную TINYMCE_DEFAULT_CONFIG 'content_css'.

Я использую пакет django-tinymce4-lite и устанавливаю 'content_css' в моем settings.pyfile

Я пробовал с CDR Boostrap, как это:

'content_css': 'https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css'

, и это сработало, но если я сделаю что-то вроде этого:

"content_css": os.path.join(STATIC_URL, "css/style.css")

У меня естьследующая ошибка 404:

"GET /static/css/style.css HTTP/1.1" 404 1764

мой css-файл находится в статической папке, расположенной в корневом каталоге моего проекта, например:

/static/css/style.css

, а мой статический конф:

settings.py

BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
STATIC_URL = "/static/"
STATIC_ROOT = os.path.join(BASE_DIR, "static/")

urls.py

urlpatterns = [
    path("grappelli/", include("grappelli.urls")),
    path("admin/", admin.site.urls),
    path("admin/filebrowser/", site.urls),
    path("tinymce/", include("tinymce.urls")),
    path("page/", include("pages.urls")),
]
if settings.DEBUG:
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

Целый день мы искали решение, даже самая маленькая подсказка приветствуется.Спасибо

РЕДАКТИРОВАТЬ:

Я в режиме отладки работает 'python manage.py runserver'

Pipfile

[[source]]
name = "pypi"
url = "https://pypi.org/simple"
verify_ssl = true

[dev-packages]

[packages]
django = "*"
black = "*"
psycopg2-binary = "*"
pillow = "*"
django-tinymce4-lite = "*"
django-filebrowser-no-grappelli = "*"

[requires]
python_version = "3.6"

1 Ответ

1 голос
/ 02 апреля 2019

Добавьте STATICFILES_DIRS = (os.path.join(BASE_DIR, "static"), ) к вашим настройкам.

Также удалите STATIC_ROOT для ваших настроек разработки или измените его на что-то, что находится вне каталога проекта, например на один уровень выше:

STATIC_ROOT = os.path.abspath(os.path.join(BASE_DIR, '..', 'static'))

Это заставит django собирать статические файлы в каталог static рядом с каталогом вашего проекта (но это может быть совсем другое место, где ваш веб-сервер будет получать их напрямую, когда вы не запускаете runserver)

Примечание. Я написал более подробное объяснение различных настроек, особенно при развертывании в производство здесь, на SO и здесь, в сообщении в блоге

...