私は、次のミドルウェアがありますDjangoミドルウェアからユーザオブジェクトを取得するにはどうすればいいですか?
class TestMiddleware():
def __init__(self, get_response):
self.get_response = get_response
def __call__(self, request):
print(getattr(request, "user", None))
return self.get_response(request)
print
関数は常にNone
を印刷します。私は、settings.pyのdjango.contrib.auth.middleware.AuthenticationMiddleware
行の前後にミドルウェアを追加しましたが、どちらの場合でもNone
が得られます。また、私はユーザーとしてログインしています。
他に何を試すことができますか?私はDjango 1.11を使用しています。
私はこれを元来試みましたが、デバッグの目的で 'getattr'に置き換えました。 – Hassan