Какой самый простой способ ссылки на файлы JS / CSS в приложении Django? - PullRequest
1 голос
/ 19 декабря 2011

Итак, я только начал изучать инфраструктуру Django, и я пытаюсь создать базовое приложение, использующее AJAX для загрузки ответов Django в мой основной div «Content». Пока все хорошо, но у меня есть проблема с ссылками на файлы JS / CSS. Все, что я хочу, это ссылка на один файл CSS и один файл JS на главной странице моего индекса.

Что я надеюсь сделать, так это добавить ссылку на style/main.css и js/main.js в сценарий urls.py моего приложения, где python будет возвращать содержимое файла. Таким образом, стандартный тег <link src='style/main.css' ... /> будет получать содержимое соответствующего файла.

Спасибо.

Ответы [ 3 ]

1 голос
/ 19 декабря 2011

Прочтите документацию по обслуживанию статических файлов .По сути, вы можете использовать Django для обслуживания этих файлов во время разработки, но вам обязательно следует настроить ваш веб-сервер (например, Apache) для обслуживания их непосредственно в вашей производственной среде.

0 голосов
/ 13 января 2012

Вы можете попробовать эти шаги:

  1. откройте ваши settings.py и

    - добавьте это в первую строку вашего файла:

    import os.path

    - изменить значение STATIC_ROOT на:

    STATIC_ROOT = os.path.join (PROJECT_DIR, 'static /')

    - изменить значение вашей STATIC_URL на:

    STATIC_URL = '/ static /'

  2. создайте папку с именем «static» в корневом каталоге вашего проекта.

  3. создайте папку для ваших статических файлов, таких как css, javascript и т. Д. Я рекомендую использовать другую папку для разных типов файлов.
  4. откройте urls.py вашего проекта -добавить это к вашим импортам: настройки импорта -добавить это к шаблонам URL:

    (r '(?:. *? /)? (? P (css | jquery | jscripts | images) /.+) $', 'django.views.static.serve', {'document_root': настройки .STATIC_ROOT}),

    ПРИМЕЧАНИЕ. В этом примере в моей статической папке находятся папки css, jquery, jscripts и images.

  5. В вашем шаблоне добавьте это:

для файлов css: (в этом примере default.css - это имя файла css)

<link href="/{{ STATIC_ROOT }}css/default.css" rel="stylesheet" type="text/css" media="all" />

для JavaScript:

<script type="text/javascript" src="/{{ STATIC_ROOT }}jquery/jquery.js"></script>
0 голосов
/ 19 декабря 2011

Настройте "django.contrib.staticfiles" правильно.

Добавьте ссылку и теги сценария в шаблон, используя настройки STATIC_URL.

<link href="{{ STATIC_URL }}css/main.css"/>
<script src="{{ STATIC_URL }}js/main.js"></script>

https://docs.djangoproject.com/en/1.3/ref/contrib/staticfiles/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...