2017-09-29 5 views
1

どのようにして、ユーザクエリーセットがself.request.userにマッチしているのでしょうか?どのようにユーザクエリーセットを見つけるかself.request.user

logged_in_user = User.objects.filter(id=self.request.user.id) 

これを行うには効率的な方法が必要です。 (例えば、get_user_model(self.request.user))?

logged_in_user = self.request.user 
+0

ああ、私はlogged_in_user = self.request.userのように使用できますか? –

+0

クエリーセットはオブジェクトではありません! –

答えて

4

ですそれはあなたを助けるでしょうか?

def get_object(self): 
    return self.request.user 
+0

このエラーが発生します。 get_object_or_404()の最初の引数は、 'User'ではなく、Model、Manager、またはQuerySetでなければなりません。 –

+0

私はself.request.userをquerysetに変換する必要がありますか? –

+0

あなたの質問に 'get_object_or_404'の使用法はありません。 – wim

1

ことがあります。ここでは

は、私のviews.pyは、すでにユーザーインスタンスを持っている場合、その中に一つだけのユーザーインスタンスでクエリセットを取得する理由は、ありません

class ProfilePageView(generics.RetrieveAPIView): 
    serializer_class = ProfilePageSerializer 

    def get_queryset(self): 
     logged_in_user = User.objects.filter(username=self.request.user.username) << right here! 
     return logged_in_user 

    def get_object(self): 
     queryset = self.get_queryset() 
     obj = get_object_or_404(queryset) 
     return obj 
+0

ありがとう!投票した –

関連する問題