이 소리가 심하다.전역 상수 설정 모든보기를 교차
이getattr(request, 'CONSTANT_NAME', None)
그러나,이 변수의 값이 어떤 시점에서 변경 될 수 있습니다, 나는 다음과 같은 코드가 의미 : 나는 내 모든 의견을 수행하여 그 일정을 참조 할 수 있습니다 의미 요청에 전역 변수를 설정하려면 내보기 중 하나에 :
setattr(request, 'CONSTANT_NAME', VALUE)
나는이 확실히 잘못된 일을하고있는 방법을 알고,하지만 난 내가 무엇을 찾고 달성하기 위해 정확하고 깨끗한 방법이 있는지 알고 싶습니다.
미들웨어에 대해 생각하고 있지만 어떻게해야할지 잘 모릅니다. 힌트만으로도 충분합니다.
미리 감사드립니다.
업데이트 : 누군가 세션에 대해 언급했습니다. 나는 그것이 작동해야한다고 확신한다. 그러나, 그것은 충분히 깨끗하지 못합니다. 세션을 사용하여 서버 유지 관리 세션의 총 수와 동일한 상수를 여러 번 만들어야합니다. 사실, 상수는 서버와 동일한 교차 지점을 유지하며 변경 가능해야합니다! 마지막 요구 사항은 불쾌한 부분입니다.
Django 세션을 사용해 보셨습니까? 링크는 다음과 같습니다. https://docs.djangoproject.com/en/dev/topics/http/sessions/#bundled-serializers 세션에 변수를 가져오고 설정합니다. 또는 context_processor를 사용하여 뷰 전체에서 전역 변수를 사용할 수 있습니다. –
최상의 접근 방식은 값이 의미하는 바와 사용 방법에 따라 달라집니다. 세션과 관련이있는 경우 세션 객체에 추가합니다. 그것이 다른 것이라면 다른 해결책이 필요할 수도 있습니다. – Louis
@AronYsidoro 세션이 마지막 내기입니다. 내가 사용하고 싶지 않은 이유는 내 변수가 특정 세션이 아니라는 것입니다. 서버마다 다릅니다. 세션은 효과가 있지만 충분히 깨끗하지는 않습니다. 컨텍스트 프로세서는 옵션이 아닙니다. 컨텍스트 프로세서에 의해 제공되는 값을 변경한다고 생각하지 않습니다. –