Django REST FrameworkでAPIドキュメントを出力する方法【Open API】

アイキャッチ画像
  • Django Rest FrameworkでAPIドキュメントを出力するには?
  • 出力したドキュメントをOpen APIツールで確認するには?

本記事ではこのような疑問を解決します。


フロントエンドとバックエンドを切り離した開発では相互間をWeb APIによってやりとりするため、
両者間の架け橋となるAPIドキュメントが必要になります。


そして、Django Rest Frameworkを用いた場合、
どのようにAPIドキュメントを出力すればよいのでしょうか?


そこで今回はDjango Rest FrameworkでAPIドキュメントを出力する方法を解説します。

ライブラリをインストールする

まずはDjango Rest FrameworkでAPIドキュメントを出力するためのライブラリをインストールします。

ここではPyYAMLとuritemplateをインストールします。

$ pip install PyYAML uritemplate

APIドキュメントを出力する

Django Rest FrameworkにはAPIドキュメントを出力するためのコマンドが標準で備わっています。

それがgenerateschemaコマンドです。

ただ、こちらのコマンドを実行してAPIドキュメントを出力するのに、
先ほどインストールしたPyYAMLとuritemplateが必要になります。

なお、出力されるファイルはOpenAPI 3.0に対応したYAML形式のファイルです。


それでは以下の通りコマンドを実行します。

$ python manage.py generateschema --file 【ファイル名】.yml

同じディレクトリに「【ファイル名】.yml」というファイルが生成されたと思います。

ちなみに、formatオプションで「openapi-json」を指定すれば、
JSON形式のファイルを出力することもできます。

$ python manage.py generateschema --file 【ファイル名】.yml --format openapi-json

出力したAPIドキュメントをツールに読み込ませる

出力したAPIドキュメントをOpen APIに対応したSwagger Editorなどのツールに読み込ませれば、
ツール上でAPIの定義などを確認することができます。

実際の画面は以下の通りです。(Swagger Editor画面)

Swagger Editor(画面)

まとめ

以上がDjango Rest FrameworkでAPIドキュメントを出力する方法になります。

SPA開発などでフロントエンドの担当者とやりとりする際に、
わかりやすいUIでAPIの定義などを確認できるのでとても便利ですね。

ぜひ活用してみてください!

実務1年未満でもOK!フリーランスエンジニアの案件獲得方法はこちら!

必読

フリーランスエンジニアが案件獲得方法とは?自ら営業せずに案件を獲得するには?実務経験1年未満でも大丈夫なの? 本記事ではこのような疑問を解決します。これからフリーランスエンジニアとして独立したい方は、兎にも角にも案件の獲得が急務です[…]

アイキャッチ画像