관리자 인터페이스에서만 Django 인증 메시지를 표시하는 방법은 무엇입니까?

StackOverflow https://stackoverflow.com/questions/674464

  •  21-08-2019
  •  | 
  •  

문제

Django의 인증 메시지는 일부 구성 문제를 CMS 사용자에게 알리는 데 매우 편리합니다. "django.core.context_processors.auth"컨텍스트 프로세서를 포함하면 모든 페이지로드에서 메시지가 삭제되고 관리자 인터페이스를 사용하려면 해당 프로세서를 포함시켜야합니다.

admin.site.root를 호출하기 전에 admin.site.root를 호출하기 직전에 템플릿 _context_processors에 해당 프로세서를 추가하여 해킹을 시도했지만 그 당시에는 이미 프로세서 목록을 가져온 것으로 보입니다.

그렇다면 Django Core 파일 자체를 변경하지 않고 Django Auth 앱을 구성에서 마지막으로 가능한 순간까지 생략하지 않고이 작업을 수행 할 수있는 방법이 있습니까?

도움이 되었습니까?

해결책

Django 메시지 시스템이 내 사이트에 중요하다면 예를 들어 다음과 같이 내 뷰에 메시징을 추가합니다.

관리 페이지에만 표시되도록 실제로 해킹 해야하는 경우 가장 쉬운 솔루션은 DJANGO.CONTRIB.CORE.CONTEXT_PROCESSORS.PY에 인증 기능을 복사하여 자신의 애플리케이션 디렉토리에서 Context_Processors.py에 넣는 것입니다. django.core 버전 대신 Context_Processors Stack에서 사용하여 요청 URL을보고 호출하십시오. user.get_and_delete_messages() 관리 URL 인 경우.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top