저는 장고 1.4.1 앱을 운영하고 있습니다.django 정적 파일이 미들웨어를 건너 뛸 수 있습니까?
내가 settings.DEBUG
은 사실이지만 당신의 설정에서 INSTALLED_APPS
에 django.contrib.staticfiles
을 포함하는 정적 파일을 제공받을 좋다고 즉 실현하지 않았다, 당신은 수동으로 URL을 파일에 아무것도를 추가 할 필요가 없습니다.
나는 또한 이것이 장고 미들웨어를 우회하는 것으로 나타났습니다. 아무도 어떻게 또는 왜 이런 일이 일어날 지 알고 있습니까?
난 그냥, 내 views.py 빈 새 프로젝트를 만들 :
from django.http import HttpResponse
def index(request):
html = '<html><body>Logo: <img src="/static/logo.gif"></body></html>'
return HttpResponse(html)
내 urls.py : 내 settings.py를 찾기 위해 디렉토리를 지정한
from django.conf.urls import patterns, include, url
urlpatterns = patterns('',
url(r'^$', 'testapp.views.index', name='home'),
)
정적 파일이며, 다음과 같이 추가됩니다.
MIDDLEWARE_CLASSES = (
'testapp.middleware.TestMiddleware',
...
)
이 미들웨어 사용 :
from __future__ import print_function
class TestMiddleware(object):
def process_request(self, request):
print("[REQUEST]", request.path)
을 내가 요청을 할 때,이 인쇄됩니다 : 그것은 테스트 서버가 시작하는 방법을 함께 할 수있는 뭔가
[REQUEST]/
[18/Jan/2013 15:30:27] "GET/HTTP/1.1" 200 60
[18/Jan/2013 15:30:27] "GET /static/logo.gif HTTP/1.1" 200 2190
[REQUEST] /favicon.ico
인가? 당신이 django-admin.py runserver
또는 python manage.py runserver
을 사용하는 경우