【Django】管理画面からデータベース操作・スーパーユーザー登録|PythonでWebアプリ開発(admin)#7

こんにちは、DXCEL WAVEの運営者(@dxcelwave)です!

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

目次

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

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

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

【Django】管理者ツールにモデルクラス登録 |admin.py

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

from django.contrib import admin

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

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

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

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

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

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

python manage.py createsuperuser

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

Username :  ユーザー名
Email address: メールアドレス
Password: パスワード(test11)
Password (again): パスワード(再)

上記が正常に入力されると次のような結果が出力されます。これでスーパーユーザーの登録が完了です。

Superuser created successfully.

下記より実際の管理画面にログインしてみましょう!

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

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

python manage.py runserver

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

http://localhost:8000/admin/

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

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

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

【Django】管理画面からデータベース操作|テーブル確認・レコード追加

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

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

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

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

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

【参考】Djangoの解説記事一覧

最後までご覧いただきありがとうございました。当サイトではDjangoフレームワークを用いた解説記事を多数取り扱っております。次のように体系的に整理しておりますため学習にお役立て下さい。

Django学習に最適!

当サイトが運営するDjango記事一覧

【参考】Pythonでできること・お仕事探し

最後に

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

本記事をシェア!
目次