`> 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へ `_