Django Pagination испортил все пути ко всем элементам .css и .js.

Я хотел использовать django-pagination и применил все изменения в settings.py после установка django = pagination, но когда я запустил свой сервер и получил доступ к странице, разбиение на страницы наверняка появилось, но сломало все пути к элементам css и js. Таким образом, страница лишена какого-либо дизайна. Я действительно не могу понять, что случилось. Вот результат python manage.py runserver:

[29/Jun/2013 10:26:53] "GET / HTTP/1.1" 200 11594
[29/Jun/2013 10:26:53] "GET /style/bootstrap.min.css HTTP/1.1" 404 3213
[29/Jun/2013 10:26:53] "GET /style/style.css HTTP/1.1" 404 3189
[29/Jun/2013 10:26:53] "GET /style/tabs.css HTTP/1.1" 404 3186
[29/Jun/2013 10:26:53] "GET /images/logo.png HTTP/1.1" 404 3189
[29/Jun/2013 10:26:53] "GET /js/jq.js HTTP/1.1" 404 3168
[29/Jun/2013 10:26:53] "GET /images/green_btn_main.png HTTP/1.1" 404 3219
[29/Jun/2013 10:26:53] "GET /js/jquery.js HTTP/1.1" 404 3180
[29/Jun/2013 10:26:53] "GET /js/bootstrap-tooltip.js HTTP/1.1" 404 3213
[29/Jun/2013 10:26:53] "GET /js/bootstrap-popover.js HTTP/1.1" 404 3213
[29/Jun/2013 10:26:53] "GET /js/bootstrap-tab.js HTTP/1.1" 404 3201
[29/Jun/2013 10:26:53] "GET /images/green_btn-2.png HTTP/1.1" 404 3210
[29/Jun/2013 10:26:53] "GET /images/logo.png HTTP/1.1" 404 3189
[29/Jun/2013 10:26:53] "GET /js/jquery.js HTTP/1.1" 404 3180
[29/Jun/2013 10:26:53] "GET /images/green_btn-2.png HTTP/1.1" 404 3210
[29/Jun/2013 10:26:53] "GET /images/green_btn_main.png HTTP/1.1" 404 3219
[29/Jun/2013 10:26:53] "GET /js/bootstrap-tooltip.js HTTP/1.1" 404 3213
[29/Jun/2013 10:26:53] "GET /js/bootstrap-popover.js HTTP/1.1" 404 3213
[29/Jun/2013 10:26:53] "GET /js/bootstrap-tab.js HTTP/1.1" 404 3201

И вот часть git diff из settings.py, которая была изменена:

@@ -95,6 +95,8 @@ MIDDLEWARE_CLASSES = (
     'django.middleware.csrf.CsrfViewMiddleware',
     'django.contrib.auth.middleware.AuthenticationMiddleware',
     'django.contrib.messages.middleware.MessageMiddleware',
+    'pagination.middleware.PaginationMiddleware',
+    
     # Uncomment the next line for simple clickjacking protection:
     # 'django.middleware.clickjacking.XFrameOptionsMiddleware',
 )
@@ -127,6 +129,7 @@ INSTALLED_APPS = (
     'rest_framework',
     'south',
     'ui',
+    'pagination',
  )
+
+TEMPLATE_CONTEXT_PROCESSORS = (
+    'django.contrib.auth.context_processors.auth',
+    'django.core.context_processors.debug',
+    'django.core.context_processors.i18n',
+    'django.core.context_processors.media',
+    'django.core.context_processors.request',
+)

Да, в django-pagination документах говорится, что используется django.core.context_processors.auth, а не django.contrib.auth.context_processors.auth. Но я использовал первое, когда обнаружил ошибку, на которую правильно ответил здесь. Это о том, чтобы быть на Django 1.4. да, я на 1.4 Кто-нибудь, пожалуйста, помогите мне. Весь дизайн пользовательского интерфейса исчез, остались только тексты.

Обновление: я сделал git stash, чтобы отменить свои изменения, и все элементы загрузились нормально. Это должна быть одна из строк в settings.py файле. Может кто-нибудь распечатать какой?


person Indradhanush Gupta    schedule 29.06.2013    source источник


Ответы (1)


Вы потеряли "django.core.context_processors.static", поэтому у вас много 404.

По умолчанию TEMPLATE_CONTEXT_PROCESSORS:

("django.contrib.auth.context_processors.auth",
"django.core.context_processors.debug",
"django.core.context_processors.i18n",
"django.core.context_processors.media",
"django.core.context_processors.static",
"django.core.context_processors.tz",
"django.contrib.messages.context_processors.messages")

Решение с помощью этой ссылки может быть лучшей практикой.

person iMom0    schedule 29.06.2013
comment
Я снова прочитал его документы, и он сказал, что нужно добавить только TEMPLATE_CONTEXT_PROCESSORS, если он еще не определен. Я удалил это из settings.py, и это сработало! Но я приму ваш ответ, потому что это тоже похоже на возможное решение. +1! - person Indradhanush Gupta; 29.06.2013
comment
Да, вы можете оставить его не определенным или изменить по умолчанию. - person iMom0; 29.06.2013