Django REST frameworkで404エラーを返すにはexceptionsモジュールが便利
今回はDjango REST frameworkで404エラーを返すにはexceptionsモジュールが便利ということについてお話ししていきたいと思います。
Django REST frameworkで404エラーを返すにはexceptionsモジュールが便利
Django REST frameworkで404エラーを返すことには成功したものの、どうやって「"detail": “Not found."」を返すんだろうと悩んでいたときのことです。
rest_framework.exceptionsにあるNotFoundを使えば良いということを、ネットサーフィンをしていたら見つけました。
こちらの記事が分かりやすいと思います。
https://medium.com/shimakaze-soft-techblog/django-rest-frameworkにあるexceptionの種類-ee6db1cd1126
使い方はリンク先のように簡単で
1 2 3 4 5 6 7 8 |
from rest_framework.views import APIView from rest_framework.response import Response from rest_framework.exceptions import NotFound from rest_framework import status class TestView(APIView): def get(self, request, *args, **kwargs): raise NotFound |
のようにするだけですね。
404エラーの他にも400や500などが用意されています。
このNotFound関数を使うことで、404エラーが返される他、「"detail": “Not found."」がresponseとして返されるようになります。
結局detailとNot foundのセットを返す方法は分からずじまいでしたが、また別の機会に調べてみることにします。
終わりに
今回はDjango REST frameworkで404エラーを返すにはexceptionsモジュールが便利ということについてお話しいたしました。
ディスカッション
コメント一覧
まだ、コメントがありません