Django 管理画面の利用
Django の管理画面を利用する基本的な方法を説明します。
環境の確認
まずは環境を確認します。
特別に変更を行っていない限り問題ないはずです。
INSTALLED_APPS に 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.admin' が含まれていることを確認します。
INSTALLED_APPS = [
'myapp1',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
]
次に MIDDLEWARE_CLASSES に 'django.middleware.common.CommonMiddleware', 'django.contrib.sessions.middleware.SessionMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware' が含まれていることを確認します。
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
スーパーユーザーの作成
管理画面を利用できる管理者ユーザー (スーパーユーザー) を作成します。
管理コマンドは次の通りです。
$ python manage.py createsuperuser
コマンド例は次の通りです。パスワードはある程度の複雑さを満たさないと設定できません。
$ python manage.py createsuperuser Username (leave blank to use 'user1'): admin Email address: admin@keicode.com Password: # パスワードを入力 Password (again): This password is too common. # パスワードが単純過ぎる場合はエラー発生 Password: Password (again): Superuser created successfully.
データベースの設定
次にデータベースの同期をとります。
$ python manage.py migrate
以上で準備完了です。さっそく開発サーバーで試しましょう。
管理サイトの利用
上記の設定を行ったら、開発サーバーを起動します。
$ python manage.py runserver
開発サーバーを起動したら、ブラウザからhttp://127.0.0.1:8000/admin/ にアクセスします。
上で作ったスーパーユーザーでログインできるはずです。
ところが、よくみると自前の Django アプリケーションの設定が存在していません。
ユーザー定義のデータモデルを Django 管理画面で管理できるようにするには、アプリケーション毎の admin.py にて次のようにモデルを登録します。
from django.contrib import admin
from myapp1.models import Company
admin.site.register(Company)
この設定を行うと、管理画面に次のようにモデルが表示されます。
以上で、管理画面のアクセス方法とユーザー定義のモデルを管理する方法について説明しました。