Django Tutorial Part 4 -- admin ページでテーブルの中身を編集する
kaede
Posted on April 14, 2022
https://docs.djangoproject.com/en/4.0/intro/tutorial02/#introducing-the-django-admin
DB管理ページ用のスーパーユーザーを作る
https://docs.djangoproject.com/en/4.0/intro/tutorial02/#creating-an-admin-user
docker-compose run web \
python manage.py \
createsuperuser
createsuperuser を打つ
Creating rest0406_web_run ... done
Username (leave blank to use 'root'): kaede0902
Email address: kaede0902js@gmail.com
Password:
Password (again):
Superuser created successfully.
- ユーザー名
- メアド
- パスワード
これらを要求されるので入力して作成した。
localhost:8000/admin にアクセスして Django の DB 管理ページにログインする
docker-compose up
runserver で動かす
localhost:8000/admin
にアクセスすると
http://localhost:8000/admin/login/?next=/admin/
login/?next=/admin/
にリダイレクトされて管理画面のログイン画面が出る
ユーザー名とパスワードでログインできる。
メアドとパスワードではログインできない。
Groups と Users のテーブルができている。
Users のテーブルにアクセスしてみる。
Users のテーブルを Django Admin から編集する
ここで ADD USER を押すことで
新しいユーザーを作成できる。
createsuperuser コマンドで作る時よりバリデーションが厳しい。
permissin や First/Last name やメアド、最終ログイン日時を編集できる。
web_1 | [14/Apr/2022 13:46:56] "GET /admin/jsi18n/ HTTP/1.1" 200 3195
サーバーを見ると GET /admin/userId/ が動いてる
polls アプリを admin ページに反映させる
https://docs.djangoproject.com/en/4.0/intro/tutorial02/#make-the-poll-app-modifiable-in-the-admin
前回のチュートリアルで作成した polls アプリの Question や Choice のテーブルは admin ページには反映されていなかった。Groups と Users しかなかった。
なので反映させる設定を書く必要がある。
なので polls/admin.py
のページに
from django.contrib import admin
from .models import Question
admin.site.register(Question)
django の contrib ライブラリから admin をインポートして
models から Question のテーブルをインポートして
admin のサイトに Quesion のテーブルを登録する。
リロードすると Quesiton テーブルが Polls アプリのものとして表示されている。
アクセスすると Question テーブルの中身のリストが見れて
一つ一つ編集できる
追加も削除もできる。
Posted on April 14, 2022
Join Our Newsletter. No Spam, Only the good stuff.
Sign up to receive the latest update from our blog.