MawaLog

一日一日、楽しく生きる。技術と音楽が好き。

DRF( Django REST framework )::request.userやurl上のpkなどのキーとなりやすい値の呼び出し方まとめ

Django

Django

Djangoのviewならrequest.userなのだが・・・

ユーザー情報の値からオブジェクトを作成して表示する関数をつくるのはDjangoの本懐のひとつのわけですが・・・DRFになると呼び出し方も結構バラエティ豊かでした・・・

#request.user@serializer
#の例

def validate(self, data):
    ....(中略)....
    user = User.objects.get(user=self.context['request'].user)
    ....(中略)....

もうひとパターン

#request.user@api.views
#これはDjangoのクラスベースビューと同じですね^^

def get_object(self):
    ....(中略)....
    instance = self.queryset.get(user=self.request.user)
    ....(中略)....
    return instance

趣旨は同じなのに毎回調べるのが面倒なのでまとめておきました^^

ちなみにurl上のpkとか任意の変数はこんな感じで取得できます^^

#url上のpk@api.views
def get_object(self):
    ....(中略)....
    print("self.kwargs['pk'] )
    ....(中略)....

参考記事

この記事救われましたぁ〜・・・
stackoverflow.com