좋아요 나는 사용자 클래스에 no_m이라는 메서드가 있습니다. 이전에는 데코레이터를 작성하지 않았지만 기본적으로 사용자가 전달하면 사용자를 다른 URL로 리디렉션해야합니다. 나는 디렉토리라고하는 디렉토리에 decorators.py라는 파일을 만들었지 만 데코레이터가 올바르게 임포트되었다고 생각합니다. 그러나 제대로 작동하지 않습니다. Heres는 내가 무엇을 :Django 사용자 정의보기 데코레이터
def no_m(view_func):
def _wrapped_view_func(request, *args, **kwargs):
try:
if request.user.is_m():
# quick test
return HttpResponseRedirect('http://google.com')
else:
return view_func(request, *args, **kwargs)
except:
return _wrapped_view_func
이 할 필요가 모든 그들이 그 테스트를 통과하면 사용자를 리디렉션, 나는 URL이 그냥 지금은 구글, 그래서 아직 할 필요가 모르겠어요. 어떤 아이디어? 제가 말했듯이, 저는 전에 장식자를 작성하지 않았습니다. 그래서 그것은 제게 새로운 것입니다. 고맙습니다.
또 다른 생각 : 템플릿 페이지를 렌더링 할 수 있습니까?
감사합니다, 나는 내가 몇 가지 예보고 후 약간 혼란스러워했다 생각합니다. 나는 또한 return render (...)를 시도했지만 아무 것도하지 않았다. 리디렉션 대신 템플릿을 렌더링 할 수있는 방법이 있습니까? – Callum
내 잘못, 오타가 파일 이름에 :( – Callum