2010-06-10 5 views
0

사이트의 일부 부분에 대한 연결을 비활성화 할 수있는 코드 스 니펫을 작성합니다. Admin과 메인 페이지는 표시 가능하지만 ajax를 사용하는 사용자 섹션은 표시되지만 사용할 수는 없습니다 (페이지 위에 투명한 div 세트로 표시). 또한 사용할 수없는 몇 페이지가 있습니다.템플릿의 렌더링을 위해 추가 데이터를 응답 객체에 추가

내 논리는, 내가 미들웨어를 쓰기 때문이다,

def process_request(self, request): 
    if ayar.tonline_kapali: 
     url_parcalari = request.path.split('/') 
     if url_parcalari[0] not in settings.BAGIMSIZ_URLLER: 
      if not request.is_ajax(): 
       return render_to_response('bakim_modu.html') 
    else: 
     return None 

그 코드는 나에게하지

(액세스 할 수 있습니다 URL이 포함) BAGIMSIZ_URLLER의 URL은 "사이트 폐쇄"라는 메시지가 표시하자

하지만 아약스 페이지에 관한 문제를 어떻게 해결할 수 있는지 알지 못합니다 ... 응답에 헤더 나 무언가를 설정해야하고 템플릿에서 확인해야합니다.

+0

아마, { 'system_status': '오프'} 내 문제를 해결 ...하지만 난 처럼 process_view 나는 형식 같은 dictionaty 일부 인수를 전달해야 – FallenAngel

답변

1

여기 documentation for process_view 사용법은 간단합니다. process_view 장고 뷰를 호출 바로 전에 호출 및 얻을 수있다 몇 인수 : 요청 - Request 객체 view_func -보기 기능 view_args - 인수 view_kwargs - 키워드 인수

당신이 예를 필요합니까

?

+0

의 사용에 대한 도움이 필요합니다 process_view를 사용 또는 좋아. 템플릿의 값 (가능한 경우) 또는보기에서 값을 확인하고 페이지 위에 div를 배치하면 사용자는 아무 것도 할 수 없지만 메시지를 볼 수 있습니다. 페이지는 내가 말했듯이 아약스를 사용하고 매 몇 초마다 새로 고침하므로 'system_status'가 꺼져 있으면 winn 페이지는 작동 가능하지 않지만 표시됩니다. – FallenAngel

+0

그래서보기의 모든 인수를 수정할 수 있습니다. 들 : view_args - 인수 view_kwargs - 당신이보기에 당신이 그들을 편집하고 볼에 보내고, 일부 매개 변수를 확인하실 수 있습니다 키워드 인수 ... 또는 예를 들어 매개 변수를 확인합니다 귀하의 의견에 대한 templatetag을 만듭니다 당신 미들웨어에 의해 보냈습니다. – Saff