Djangoのrest_framework.request.Requestでパスパラメータを取得したいとき
今回はDjangoのrest_framework.request.Requestでパスパラメータを取得したいときどのようにすれば良いのかについてご紹介いたします。
Djangoのrest_framework.request.Requestでパスパラメータを取得したいとき
DjangoでURLに含まれている
1 |
path('tests/<int:test_id>/', TestViewSet.as_view({'get': 'list', 'post': 'create'})), |
のtest_idをViewSet以外のSerializerなどの処理で取得したいときがあると思います。
結論から言うと、
1 |
request.parser_context['kwargs']['test_id'] |
などparser_contextを使ってrest_framework.request.Requestという型から取得することが可能です。
GETメソッドではなく、PUTやDELETEメソッドを使ってrequest.GETなどから取得できないときなどにこれを使うと良いと思います。
終わりに
今回はDjangoのrest_framework.request.Requestでパスパラメータを取得したいときどのようにすれば良いのかについてご紹介いたしました。
ディスカッション
コメント一覧
まだ、コメントがありません