PythonMania

普段はロボットとAIを組み合わせて色々作ってます。Python関係以外も色々投稿していくと思います。

【Django】管理サイトからデータベースを操作する

f:id:mizuhiki0111:20190430175940p:plain


前回の記事の続きです

前回の記事



www.pythonmania.work




前回の記事ではSQLLiteを使用してデータベースに「Hello」というテーブルを作成しました。


フォームから送信した名前を登録できるように実装しましたが、これを管理サイトからも操作できるようにしてみます。



管理サイトはhttp://127.0.0.1:8000/adminにアクセスした際のページになります(デフォルトの設定)



①管理者の作成

管理サイトにログインするためには、まず管理者を登録する必要があります。


コマンドラインで

python manage.py createsuperuser

を実行し、「ユーザー名」・「メールアドレス」・「パスワード」の順に設定します。



②Helloテーブルを管理サイトから操作できるようにする


管理者を作成したので管理サイトにはログインできるようになりましたが、このままではHelloテーブルを操作することはできません。

管理ツールからHelloテーブルを操作できるように設定を変更する必要があります。


myapp/admin.pyを以下のように変更します。


from django.contrib import admin
from .models import Hello


admin.site.register(Hello)


このように記載することで管理サイトからHelloテーブルを操作できるようになります。




実際に管理サイトにアクセスしてテーブルを操作してみましょう



③管理サイトにアクセス


サーバーを立ち上げ、http://127.0.0.1:8000/adminにアクセスします。



ログイン画面が現れるので、①で登録したユーザー名とパスワードを入力してログインします。

ログインすると以下のような画面が現れると思います。



f:id:mizuhiki0111:20190515115303p:plain


ログインしたらMYAPPの「Hellos」と書いてあるボタンをクリックすると、Hellosテーブルが表示され、レコードの追加・削除が行えます。

※画像では「Friends」と書いてありますが気にしないでください笑



また「ユーザー」ボタンからは登録ユーザー・パスワードの変更などを行うことができます。