`> tech-memo.club Topへ `_
##########################
2. サンプルアプリ作成
##########################
| Django を利用したサンプルアプリを作成します。
| Django プロジェクトの構成(ファイル群)などをまとめます。
|
| 下記 2段階で作成
| 2-1. Django 管理サイトを利用したアプリ作成
| 2-2. 自作画面を利用したアプリ作成
*******************************************
2-1. Django 管理サイトを利用したアプリ作成
*******************************************
.. image:: ./images/02_makeapp_001.png
:alt: 「record_app」アプリ作成
| 「record_app」という名前のアプリを作成する
| 1.コマンドプロンプトで「python manage.py startapp record_app」を実行
----
.. image:: ./images/02_makeapp_002.png
:alt: 「record_app」アプリの構成図
| 「record_app」アプリのファイル群が生成され、上図の構成となる
----
.. image:: ./images/02_makeapp_003.png
:alt: モデル作成
| データベースに登録する項目をモデルとして「models.py」に定義する
| ここでは、血圧テーブル(クラス名:BloodPressure)を下記3項目で定義
| ・記録日時
| ・最高血圧
| ・最低血圧
| ※モデルはテーブル定義と同じような感覚で定義する
| ※return は文字列である必要があるため、DateTimeField を文字列に変換したものを return している
|
| ※13行目について
| 「settings.py」の「USE_TZ = True」の設定にて、データベースに登録される時間はUTCとなる
| そのため、日本時間に合わせるため +9時間の処理を行っている
|
| ▼参考
| https://qiita.com/okoppe8/items/a1149b2be54441951de1
| https://rurukblog.com/post/django-time-lags/
----
.. image:: ./images/02_makeapp_004.png
:alt: apps.py
| 1.「apps.py」を開く
| 2.クラス名「RecordAppConfig」をコピーする
----
.. image:: ./images/02_makeapp_005.png
:alt: settings.py
| 1.「settings.py」を開く
| 2.「INSTALLED_APPS」にコピーしたクラス名を上図の内容で追加する
----
.. image:: ./images/02_makeapp_006.png
:alt: マイグレートファイル生成
| 「models.py」で定義した内容でマイグレートファイルを生成する
| 1.「python manage.py makemigrations record_app」を実行
----
.. image:: ./images/02_makeapp_007.png
:alt: マイグレートファイルで実行されるSQL確認
| 生成したマイグレートファイルで実行されるSQL文は下記コマンドで確認できる
| 1.「python manage.py sqlmigrate record_app 0001」を実行
----
.. image:: ./images/02_makeapp_008.png
:alt: マイグレートファイルをデータベースへ反映
| 生成したマイグレートファイルをデータベースへ反映する
| 1.「python manage.py migrate record_app」を実行
----
.. image:: ./images/02_makeapp_009.png
:alt: admin.py」にモデル定義
| 「admin.py」に "BloodPressure"モデルを定義する
| ※ここに定義することで Django 管理サイトに追加されます
| ※Django 管理サイトの一覧に表示する項目を制御するために「BloodPressureAdmin」クラスを定義しています
| 一覧表示項目の制御が不要な場合、「admin.site.register(BloodPressure)」の 1行だけで良い
----
.. image:: ./images/02_makeapp_010.png
:alt: 実行とデバッグ
| 1.左メニューから「実行とデバッグ」アイコンをクリック
| 2.「実行とデバッグ」ボタン押下
| 3.「Django」を選択する
| ※VSCode起動毎に1度実施していれば、手順3は不要
----
.. image:: ./images/02_makeapp_011.png
:alt: Django 管理サイトにログイン
| Django 管理サイトにログイン
| 1.ブラウザのURL欄に「http://127.0.0.1:8000/admin/」を入力して表示
| 2.「python manage.py createsuperuser」で登録していたスーパーユーザーでログインする
----
.. image:: ./images/02_makeapp_012.png
:alt: レコード追加
| 1.Blood pressure の「追加」ボタン押下
----
.. image:: ./images/02_makeapp_013.png
:alt: レコード追加情報入力
| 1.「最高血圧」、「最低血圧」を入力する
| 2.「保存」ボタン押下
----
.. image:: ./images/02_makeapp_014.png
:alt: レコード追加成功
| 登録成功
| ※ここでは割愛しますが、この管理サイトで「変更」、「削除」もできます
*******************************************
2-2. 自作画面を利用したアプリ作成
*******************************************
| 準備中
`> tech-memo.club Topへ `_