- Не применяются стили CSS
- Не работают CSS стили в Django
- 1 ответ 1
- Всё ещё ищете ответ? Посмотрите другие вопросы с метками html css python django или задайте свой вопрос.
- Похожие
- Подписаться на ленту
- Django не применяет файл CSS из приложения на странице 404
- 3 ответа
- Почему появляется ошибка:
- Настройки:
- Почему django не может найти файлы css:
- Обновить
- Django: CSS не работает
- настройки
- посмотреть
- 2 ответов
- settings.py (кусок кода)
- settings.py и urls.py в посте выше.
- search.html
- views.py
Не применяются стили CSS
Помощь в написании контрольных, курсовых и дипломных работ здесь.
django 2.1.5 пытаюсь включить css файл, ошибок не выдает но и не отображает его. что не так.
Не применяются стили из CSS
Не могу понять, почему не применяются стили из css файла(( Kharkiv ONLINE -.
Не применяются стили CSS
Не работает код для
, помогите, что не так?!( .
а что ж на самую старую доступную документацию-то? 🙂
Jabbson, вряд ли там сильные отличия. главное, чтоб человек посыл понял.
| Меню пользователя @ m0nte-cr1st0 |
| Читать блог |
Challenger85, в каждом приложении джанго могут быть статические файлы. Для разработки они отдаются средствами джанго. Для релиза все статические файлы собираются в одном месте, чтобы, к примеру, nginx мог их отдавать. Для этого надо запустить команду collectstatic .
Более детально о механизме работы рассказано по выше упомянутой ссылке. Я вполне мог допустить ошибку, так что перечитайте статью полностью.
Почему не работают стили для .text-index на экране 1920х1080px? .
Помогите разобраться почему не применяются стили к первому input в форме регистрации (Email).
Уже не знаю в чем проблема, стили не применяются, прошу помощи. .
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.
И вообще, зачем нужны навороты с 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/ — неосилил(
Вопрос следующий: какой наиболее просто способ поднять свой Джанго-сервер чтобы он «светил» в глобал? И есть ли ге-нить русскоязычная докумнтация по шагам?
Источник