【Django】管理画面(admin)にモデル・ユーザーを登録し、データベースを操作|PythonでWebアプリ開発#7

こんにちは、Kosei(@kay_diacc2)です!

Djangoフレームワークを活用するモデルの活用方法について触れます。特にDjangoの管理ツールにモデルクラスを登録および管理ユーザーを登録、管理画面上でデータベースのテーブルを閲覧・レコード追加できるに至るまでを詳しく解説します。

目次

管理画面へモデルクラスを登録する手順

本記事でご紹介する手順の全体像を示します。既にモデルが作成されていることを前提として進めます。そのため、予めモデルクラスを登録し、マイグレーションの適用まで完了させておきましょう。

モデル作成やマイグレーションの方法から知りたい方はこちらをご覧ください。

管理者ツールにモデルクラス登録 (admin.py)

管理ツールにモデルクラスを登録し、管理画面上でテーブルを閲覧できるようにしましょう!まず、アプリケーションフォルダ内のadmin.pyを開き、以下を記載します。

from django.contrib import admin

# モデルをインポート
from . models import モデルクラス名

# 管理ツールに登録
admin.site.register(モデルクラス名)

admin.site.register(モデルクラス名)が管理画面でテーブルを表示・編集できるようにするメソッドです。( )内にモデルクラス記載しましょう。

スーパーユーザー(Super User)を登録

Djangoの管理画面にアクセスするには、管理者IDが必要です。もし管理者IDがない場合、事前に管理ユーザー(Super User)を登録します。管理ユーザー作成済みの場合は、この項を読み飛ばしていただき問題ありません。

まず、ターミナルウィンドウを開き、「manage.py」ファイルがあるディレクトリ上で以下のように入力します。

python manage.py createsuperuser

次に、「ユーザー名」「Email」「パスワード」の入力します。

Username :  ユーザー名
Email address: メールアドレス
Password: パスワード(test11)
Password (again): パスワード(再)
Superuser created successfully.
(base) HigashinoMacBook-Pro:Project_Folder simple$ 

入力が終われば、管理ユーザーの登録が完了です。下記より実際の管理画面にログインしてみましょう!

管理(admin)画面にログイン

先ほど作成した管理者アカウント情報をもとに、管理画面にログインします。ターミナルウィンドウを立ち上げ、ローカルサーバーを起動してみましょう。

python manage.py runserver

そして、以下のリンクにアクセスします。

http://localhost:8000/admin/

管理画面にアクセスすると、ログインページが表示されます。

ログインすると管理画面に遷移します。

拡大すると、モデルクラスより派生したテーブルが表示されます。

管理画面をテーブル確認

登録したモデルクラスから派生したテーブルの中身を見てみましょう。テーブルにレコードが追加されていない場合は、以下のように表示されます。

テーブルにレコードを追加

上図右上の「Add モデルクラス名」をクリックしてみましょう。すると、モデルクラスのマイグレーション適用時に登録したを変数がフィールドとして表示されます。

それぞれの内容を入力し、右下「SAVE」ボタンをクリックすると、レコードが追加されます。

これでモデルクラスを管理画面に登録し、実際に管理画面を通じてレコードを追加するまでできるようになりましたね!

Djangoまとめ

最後までご覧いただきありがとうございました。当サイトではDjangoフレームワークを用いた用途別解説記事を多数取り扱っております。是非合わせてご覧ください。

Djangoを学習したい方向けにおすすめできる教材も紹介しています。是非ご覧下さい。

最後に

この記事が気に入ったら
フォローしてね!

本記事をシェア!
URLをコピーする
URLをコピーしました!
目次
閉じる