Не работают стили django

Не применяются стили CSS

Помощь в написании контрольных, курсовых и дипломных работ здесь.

Не отображает стили css
django 2.1.5 пытаюсь включить css файл, ошибок не выдает но и не отображает его. что не так.

Не применяются стили из CSS
Не могу понять, почему не применяются стили из css файла(( Kharkiv ONLINE -.

Не применяются стили CSS
Не работает код для

, помогите, что не так?!( .

а что ж на самую старую доступную документацию-то? 🙂

Jabbson, вряд ли там сильные отличия. главное, чтоб человек посыл понял.

Меню пользователя @ m0nte-cr1st0
Читать блог

Challenger85, в каждом приложении джанго могут быть статические файлы. Для разработки они отдаются средствами джанго. Для релиза все статические файлы собираются в одном месте, чтобы, к примеру, nginx мог их отдавать. Для этого надо запустить команду collectstatic .

Более детально о механизме работы рассказано по выше упомянутой ссылке. Я вполне мог допустить ошибку, так что перечитайте статью полностью.

Не применяются CSS-стили
Почему не работают стили для .text-index на экране 1920х1080px? .

Не применяются стили Css
Помогите разобраться почему не применяются стили к первому input в форме регистрации (Email).

Не применяются CSS-стили
Уже не знаю в чем проблема, стили не применяются, прошу помощи. .

CSS не применяются стили на хостинге
После заливки сайта на хостинг не применяются стили, указывал и относительный и абсолютный пути.

Источник

Не работают CSS стили в Django

Только начал изучать Django и столкнулся с проблемой: не применяются стили CSS ни на одной из страниц (home.html и about.html).

Вот мои настройки в settings.py связанные со static.

STATIC_URL = ‘/static/’ STATICFILES_DIRS = [ os.path.join(BASE_DIR, ‘static’), ]

Вот расположение файлов:

Вот что показывает Developer tools:

1 ответ 1

В Devtools видно, что background-color переопределяется в _reboot.scss (он, кстати, нигде в приведенных листингах явно не подключен) — если вы проскроллите вниз, то увидите, что background-color из style.css зачёркнуто. Выход — вам нужно подключить ваш style.css последним, чтобы он переопределял заданные ранее свойства.

За ответ в коментах спасибо Artem Korsunov

Всё ещё ищете ответ? Посмотрите другие вопросы с метками html css python django или задайте свой вопрос.

Похожие

Подписаться на ленту

Для подписки на ленту скопируйте и вставьте эту ссылку в вашу программу для чтения RSS.

дизайн сайта / логотип © 2021 Stack Exchange Inc; материалы пользователей предоставляются на условиях лицензии cc by-sa. rev 2021.10.15.40479

Нажимая «Принять все файлы cookie» вы соглашаетесь, что Stack Exchange может хранить файлы cookie на вашем устройстве и раскрывать информацию в соответствии с нашей Политикой в отношении файлов cookie.

Источник

Django не применяет файл CSS из приложения на странице 404

У меня есть проект Django с несколькими приложениями. Я пытаюсь сделать некоторые страницы ошибок по умолчанию, например, для ошибок 400, 403, 404, 500. Я сделал это и отобразил соответствующие шаблоны, но без стилей или JS.

На странице ошибки 404 я пытаюсь создать ссылку на CSS из одного из приложений, чтобы применить правильный стиль, но в консоли я вижу эту ошибку:

Однако файл там существует.

Этот конкретный файл CSS находится в двух местах: в каталоге приложения и также находится в STATIC_ROOT, потому что я выполнил команду python manage.py collectstatic .

STATIC_URL установлен на /static/

Файл CSS находится по адресу:

Мой шаблон 404 находится по адресу:

Читайте также:  Ноутбук не работает видеоадаптер

Моя ссылка на CSS выглядит так:

URL моего проекта выглядит так:

Я пробовал много разных решений (например, избавился от комментариев в CSS или изменил тип ссылки HTML), но пока ничего не помогло.

Каков наилучший способ сделать это?

ИЗМЕНИТЬ ЧТОБЫ ДОБАВИТЬ: Моя страница 404.html выглядит так:

Файлы JS также дают ошибку 404, но я полагаю, как только я выясню причину проблем с CSS, я также смогу выяснить проблемы с JS. Файл error_base.html по сути представляет собой шаблонный HTML-файл с соответствующими блоками в соответствующих местах для блоков, перечисленных на странице 404.html.

ДОПОЛНИТЕЛЬНОЕ ИЗМЕНЕНИЕ ДЛЯ ДОБАВЛЕНИЯ:

Мои настройки статических файлов выглядят так:

ИЗМЕНИТЬ ЧТОБЫ ДОБАВИТЬ: Древовидная структура выглядит так:

3 ответа

Почему появляется ошибка:

Каждый раз, когда вы визуализируете html в браузере, негласно делается запрос на выборку каждого из ваших статических файлов. Итак, в вашем случае шаблон 404.html сообщает вашему браузеру получить http://127.0.0.1:8000/static/launcher/dist/css/launcher.css . Если ваш сервер django не знает, где находится этот файл, он ответит шаблоном 404.html вместо css, который имеет тип MIME text/html , а не text/css , отсюда и ваша ошибка.

Настройки:

settings.STATIC_ROOT и settings.MEDIA_ROOT должны быть названиями каталогов, содержащих ваши статические и мультимедийные файлы, не абсолютный путь к этим каталогам. Измените их на следующие:

Почему django не может найти файлы css:

Если вы посмотрите на исходный код функции static , которую вы вызываете в своем urls.py , он будет выглядеть примерно так:

Это означает, что re_path , который используется для рендеринга статических файлов, больше не существует, поскольку вы установили DEBUG=False для проверки своего 404.html шаблон .

Используйте это, чтобы создать свой urlpattern вместо встроенной функции django static :

Заявление об ограничении ответственности: это в основном та же функция, что и в django.conf.urls.static , без ограничения DEBUG=False .

Обновить

Как указано в комментариях, вы можете использовать manage.py runserver —insecure вместо написания пользовательской функции static .

Я бы написал комментарий, но не могу из-за репутации, потому что я новенький. Вам следует попытаться получить доступ к ссылке (http://127.0.0.1: 8000 / static / launcher / dist / css / launcher.css) в вашем браузере! Если файл css не открывает путь, проблема.

Другая возможная причина — комментарий в начале файла css.

Обычно это означает, что страница не может найти ваш файл css и пытается загрузить вашу ненайденную страницу, которая является html.

Попробуйте использовать полный абсолютный путь для ссылки на странице ошибки и посмотрите, работает ли это:

Если это сработает, я бы в следующий раз проверил, что переменная static , которую заменяет Django, действительно установлена правильно во время выполнения. Я подозреваю, что путь немного отклонился.

Если это не сработает, попробуйте указать полный абсолютный путь к файлу css в папке приложения вместо STATIC_ROOT :

Если это сработает, а первое — нет, то я подозреваю, что проблема где-то в конфигурации / переводе, когда ваши файлы собираются в STATIC_ROOT . Я не знаком с процессом, поэтому я не уверен, что именно было перемещено, куда и какие метаданные были изменены, если таковые имеются. Я полагаю, что никто не делает, но единственный способ убедиться — это попробовать.

Похоже, ваш STATICFILES_DIRS не указывает на конечные папки, в которых на самом деле находятся файлы css. Заполните эти пути, и это может сработать (добавьте dist / static . и т. Д.)

Источник

Django: CSS не работает

Я все еще новичок в django, и у меня возникли проблемы с моей работой CSS.
Я проследил направление от ссылки:Django статическая ссылка учебник, при обработке статических файлов. Но это все еще не работает.

настройки

посмотреть

и организации каталогов

src — >staticfiles — >css — >стиль.в CSS

Огромное спасибо, ваша помощь и время очень ценится!

2 ответов

для Django для обслуживания статических файлов, вы должны убедиться, что у вас есть несколько настроек.

STATIC_URL

этот параметр указывает, какой url должен сопоставляться статическим файлам. Вы уже это сделали.

Читайте также:  Как отремонтировать нос сапог

STATICFILES_DIRS

это указывает все папки в вашей системе, где Django должен искать статические файлы. Идея в том, что у вас может быть несколько приложений в вашем проекте, и каждое приложение может потребоваться другой набор статических файлов. Таким образом, для организационных целей каждое приложение может содержать где он будет хранить только статические файлы. Итак, у Django должен быть способ узнать, где находятся эти каталоги. Вот для чего эта настройка.

STATIC_ROOT

этот параметр указывает, где Django будет копировать все статические файлы, а не где статические файлы уже находятся. Идея в том, что как только вы покинете development в производство Django больше не может обслуживать статические файлы из-за проблем, которые я не буду здесь (это в статьи). Однако для производства, все статические файлы должны быть в одном каталоге, а не во многих, как указано в STATICFILES_DIRS . Таким образом, этот параметр указывает каталог, в который Django будет копировать все статические файлы из всех файлов в STATICFILES_DIRS , выполнив следующую команду:

пожалуйста заметьте это только необходимо как только вы идете в продукцию а также, что указанный здесь Каталог не может быть таким же, как любой каталог, указанный в STATICFILES_DIRS .

Urls.py

в разработке для Django для обслуживания ваших статических файлов вы должны включить статические URL-адреса в свой urls.py:

как только вы завершите все вышеперечисленные вещи, ваши статические файлы должны обслуживаться до тех пор, пока у вас есть DEBUG = True . Из списка выше, вы, кажется, только завершить STATIC_URL . Также обратите внимание что все шаги, которые я описал выше, находятся в документах, которые вы связали в своем вопросе (ссылке). Это может быть немного запутанным в начале, но если вы прочитаете его пару раз, это станет яснее.

Источник

settings.py (кусок кода)

Базу данных заполняю через админку и все вроде работает, кроме КАРТИНОК. при попытке загрузить какртинку: tempted access to ‘\static\house01.gif’ denied.Request Method: POST Request URL: http://127.0.0.1:8000/admin/realty/property/7/ Django Version: 1.4 pre-alpha Exception Type: SuspiciousOperation Exception Value: Attempted access to ‘\static\house01.gif’ denied.

Чего только не пробовал(( И статические переменные менять и картинки из разных мест грузить(

Подскажите, что делать?

Точно, забыл еще что MEDIA_ROOT при загрузке применяется. Попробуйте поставить не pre-alpha. Вот решение в гугле: http://groups.google.com/group/django-users/browse_thread/thread/b9cbb6cae715d09d В общем прав ему не хватает что бы рисунок ксохранить. Стандартная проблема.

Установил версию 1.3. Проблема осталась((

Понятно что нехватает прав, я читать умею. А как сделать чтобы их хватало?

Решение посмотреть не могу, не зарегистрирован в гугле и региться лениво, там дибильные КАПЧИ(

вошел, там по буржуйски. уменя с ни м проблемы( Еслиб спокйно читал на английском, давно бы офф-доки прочитал и сделал, раз пишу тут. значит нужна помощь на русском языке.

Мы с гуглем-транслейтом победили эту писанину. Проблема решена СПАСИБО!

Щас изложу ещё одну.

settings.py и urls.py в посте выше.

пользуюсь этим Урлом: (r’^search/$’, views.search),

пробовал так: MEDIA_URL = ‘http://127.0.0.1:8000/static/’ и так: MEDIA_URL = ‘/static/’

Картинки вставляю так:

search.html

views.py

При этом видно в запросах: [24/May/2011 17:46:18] «GET /search/button_down.gif HTTP/1.1» 404 2583 Т.е. он почему то пытается грузить картинки из папки «search»(по имени ссылки)

Картинки лежат в папке «static», если указать background-image:url(«/static/button_down.gif»); — то все работает.

Почему (несмотря на MEDIA_URL = ‘/static/’) он пытается грузить статик из «search»?

ZenRus вошел, там по буржуйски. уменя с ни м проблемы( Еслиб спокйно читал на английском, давно бы офф-доки прочитал и сделал, раз пишу тут. значит нужна помощь на русском языке.

Вы не расстраивайтесь так, мы всегда готовы почитать буржуйские доки за отдельную почасовую плату.

ZenRus Почему (несмотря на MEDIA_URL = ‘/static/’) он пытается грузить статик из «search»?

Кто ж его знает. Я делаю в шаблоне так:

А как сделать есть в CSS есть картинки? , например:

Я уже плюнул на попытки подгружать CSS как динамику, просто вставляю сразу в HTML.

Читайте также:  Проводник для windows 7 как настроить

И вообще, зачем нужны навороты с MEDIA_URL , если можно url(«/static/button_up.gif»); Или так у меня только на локальном тестовом сервере будет работать?

П.С. Вы же понимаете всю эту кухну, напишите нормальный развернутый ДОК на эту тему, такую кучу вопросов по данной теме в инете видел, и практически ни одного вразумительного ответа.

Вообще-то, в css используют относительыне ссылки, типа url(«../img/button_up.gif»). И не имеет значения, как подключается css-файл, главное чтобы папка img была на месте.

Вы же понимаете всю эту кухну, напишите нормальный развернутый ДОК на эту тему, такую кучу вопросов по данной теме в инете видел, и практически ни одного вразумительного ответа.

Все эти вопросы возникают, потому что люди, не читая книг, начинают что-то делать. Вся эта кухня включает в себя знание HTML, CSS, ну и общие понятия, как вообще работает браузер, сайты, HTTP. Django — просто инструмент, который позволяет использовать все эти знания для создания инструментов.

Написание нормального рецепта с примерами и ссылками занимает 4 часа, как минимум. С того времени, как на сайте появилась возможность добавлять рецепты пользователями — был добавлен только один. То есть, никто не хочет тратить свое время. Вот и нам писать статьи аля «как работает сайт для чайников» вообще нет никакого интереса — пытаемся писать или переводить что-то полезное для себя или то, что нельзя найти в гугле.

Можете разобраться как это все работает и доступно написать так, как вы бы поняли. И все будут вам благодарны.

ZenRus Вы же понимаете всю эту кухну, напишите нормальный развернутый ДОК на эту тему, такую кучу вопросов по данной теме в инете видел, и практически ни одного вразумительного ответа. Пытаюсь найти свою мотивацию, чтобы потратить свои четыре часа. Не находится Как разберётесь (там несложно), напишите рецепт для остальных.

Вообще-то, в css используют относительыне ссылки, типа url(«../img/button_up.gif»). И не имеет значения, как подключается css-файл, главное чтобы папка img была на месте. Да в HTML-е вообще все пути относительными можно сделать.

Насколько я понял, проьблема не в относительнисти линков, а втом что CSS и картинки это статика, и Джанго не может их просто взять по пути рядышком, а должен сформироваться запрос на загружку того или иного статического объекта, и результатом обработки такого запроса является как раз загрузка этого статика (Я это как-то так понимаю)

Если осилю приницпы, то обязательно напишу статью))

Django формирует html, а не запросы. Запросы формирует браузер. При использовании dev-server статику обычно отдают через ‘django.views.static.serve’. Которую берет он из настроек: . Логика вот такая:

Тоесть в шаблоне будет << MEDIA_URL >>path_to_css_file/file.css. В django.views.static.serve попадет path_to_css_file/file.css. MEDIA_URL отрежется системой урлов. static.serve попытается найти файл по полученному пути в document_root, то есть settings.MEDIA_ROOT.

То есть у вас не верно т.к. вы указали для django.views.static.serve «search/», а не static/, который прописан в MEDIA_URL.

Как вариант можно отдавать через apache, я так делаю если много статики и джанговский сервер тормозит, да и спама в консоли меньше. Тогда просто в MEDIA_URL указываете адрес по которому apache раздает вашу статику, типа http://local.mysite.com/static/.

Огромное спасибо, пошел разбираться. Последний вопросик, раз тема в это русло пошла:

Мне нужно «выпустить мое приложение в мир», т.е. чтобы его было видно из глобала, как тут ПРОЩЕ поступить?

У меня уже стоит Apache 2.3 Python 2.7 Django 1.3.

Пробовал разобраться с конфигурированием Апача для Джанги, что-то так все замудрено( Для Python 2.7 нет mod_python, ставить версию ниже нет желания Натолкнулся на Apache + WSGI, попытался почитать: http://djbook.ru/examples/3/ — неосилил(

Вопрос следующий: какой наиболее просто способ поднять свой Джанго-сервер чтобы он «светил» в глобал? И есть ли ге-нить русскоязычная докумнтация по шагам?

Источник

Оцените статью