📚

Nuxt.jsでWebアプリケーション開発メモ14

に公開

概要

ユーザーの編集画面を追加。

プロンプト14

# 命令14
ユーザー編集画面を追加してください。
- user.vueで各行のactionメニューから編集をクリックすると、そのユーザーの編集画面に遷移します。
- パスは`admin/user/update`か`admin/user/update/{pk}`のどちらかになるようにしてください。どちらのパスにするかは、設計的により良い方法という観点で選択してください。
- 編集画面のフォームはユーザー追加画面をベースに以下の点だけを変更してください。
  - パスワード、パスワード確認入力ボックスは不要。
  - api_customuserテーブルのis_active相当のチェックボックスを追加してください。ラベル名は`アクティブ`としてください。
  - ボタンは`キャンセル`ボタンと`変更`ボタンにしてください。
- その他ページ構成はユーザー追加画面と同じにしてください。(一部私が手動修正している箇所もありますのでそれと同じにしてください。)

追加命令

  • 追加画面と共通化できそうなデータ定義を共通化。
  • ユーザー一覧画面でアクティブ列を追加。
  • Djangoのis_staffの解釈を勘違いしていた。このアプリでは管理者はis_staffis_superuserは常にTrueとするように変更。

画面

対応内容

  • ユーザー編集画面を追加。
    • パスはadmin/user/update/{pk}にした。
  • ユーザー追加画面や一覧画面で共通のデータ定義を切り出してtypes/user.tsに定義するようにした。
  • Django側でユーザー情報取得する際、is_superuserの値を返していなかったので返すよう修正。
  • Django側でユーザー追加、編集時に管理者であればis_staffis_superuserは常にTrueとするように変更。

ソース差分

バックエンド

https://github.com/tkure/prototype-backend/commit/58ca1bb468c08153b484ff8bf80e1a1ad052e176

フロントエンド

https://github.com/tkure/prototype-frontend/commit/b3799187fc3a15f81b6259f082d8e542832086d6


→ Nuxt.jsでWebアプリケーション開発メモ15

Discussion