今日は、チュートリアル4に取り組みました。
難しかったのですが、少しでも自分の理解の助けになるように、学んだことをこの場でアウトプットしておきます。
自分用にこの記事を書いているので、ご了承下さい。
概要
このチュートリアル4を通して、APIに適用した機能は以下の通り。
- コードスニペットは、必ずその制作者に紐づけられる
- 認証されたユーザーのみ、スニペットを作ることができる
- そのスニペットの制作者のみ、編集・削除ができる
- 認証していないユーザーは、スニペットの閲覧のみ可能となる
手順
こういった機能を実現するために、踏むべき手順があり、それを今日は行っていました。
- スニペットを保存するテータベースのモデルに、制作者と紐づける項目を新たに追加する(訓練のため、データベースを作り直す)
- Djangoが持っているユーザーモデルの情報を、制作したスニペットと合わせて、APIを通して見られるようにする
- スニペットを保存する際に、ユーザー情報を付け加えて保存するための処理を書き加える(紐づけが完了する)
- スニペットテーブルに入っている製作者情報も、取り出してAPIのJSONデータとして書き出す処理を加える
- スニペットのビューに、「認証したユーザー以外は見ることしかできない」制限をかけるクラスを追加する
- APIブラウザに、ユーザーログインのための機能を追加する
- オブジェクトの制作者のみ編集・削除が可能になるという制限は、DRFでデフォルトで用意されていないので、自分で制限の定義クラスを別途作成し、編集・削除のビューに追加する
- 動作確認をする
ざっと、今の私のレベルで認識できるのはこういった内容でした。
DRFを学びたい方は、ぜひ公式ドキュメントを参照してください。