Django 컨텍스트 프로세서를 사용하는 것이 언제 적절합니까?
-
06-07-2019 - |
문제
내 뷰의 약 절반에 동일한 데이터 세트가 필요한 경우 컨텍스트 프로세서를 사용하여 데이터를 항상 사용할 수 있도록하는 것이 적절합니까? 보기에는 사용되지 않습니까?
해결책
그만큼 RequestContext
이니셜 라이저는 설정 파일에 나열된 컨텍스트 프로세서를 실행하지만 추가 프로세서 목록도 실행할 수 있습니다. 모든 범용 컨텍스트 프로세서는 설정에 넣을 수 있습니다. RequestContext
사례별로.
떠나다 RequestContext
컨텍스트 프로세서를 실행하지 않도록합니다.
# want context processors listed in settings.py as well as some more specific ones
return render_to_response('template.html', {'foo':'bar'}, context_instance=RequestContext(request, processors = extra_processors))
# want only context processors listed in settings.py
return render_to_response('template.html', {'foo':'bar'}, context_instance=RequestContext(request))
# no context processors
return render_to_response('template.html', {'foo':'bar'})
다른 팁
통과만으로 실제로 컨텍스트 프로세서를 사용하는 뷰를 필터링 할 수 있습니다. RequestContext(request)
필요한 사람들에게만 : 예를 들어 :
# want context processors
return render_to_response('template.html', {'foo':'bar'}, context_instance=RequestContext(request))
# no context processors
return render_to_response('template.html', {'foo':'bar'})
제휴하지 않습니다 StackOverflow