注文アプリ作る話 part.2
こんにちは、たくさん寝太郎です。
最近全く眠れず、酒を飲んで23時ごろに寝ても3時くらいに目が覚めます。しかも二度寝したいのに眠気が来ないのが辛い。異動などのストレスが原因のような気がしますが早く治って欲しいですね(病院に行けといった話)
そういえば大学院生の時もストレスが酷くて眠れず、GABAに頼っていたのを思い出しました。プラシーボかもしれませんが、だいぶ効くのでオススメです。
さて、今朝も早起きしてやることが無いので先日記事にした注文アプリのpart.2を書こうと思います。
kaworu-mk6.hatenablog.com前回の記事ではtopページとドリンクメニューを作りました。今回は注文管理テーブルを作ってオーダーを登録する処理を追加します。
DB設計
models.pyに登録する(メニューテーブル)
まずメニューテーブルを作ります。先ほど考えたスキーマを参考にして、Menuアプリ下のmodels.pyに以下のように記述します。
とりあえずFieldは適当に設定してます。
from django.db import models # Create your models here. class MenuTable(models.Model): menu_id = models.CharField(max_length=8) menu_name = models.CharField(max_length=64) FD_class = models.CharField(max_length=1, choices=(('F', 'Food'), ('D', 'Drink'))) price = models.IntegerField() def __str__(self): return self.menu_name
adminサイトからメニューを登録できるように、admin.pyにMenuTableを追加します。
from django.contrib import admin from .models import MenuTable # Register your models here. class MenuTableAdmin(admin.ModelAdmin): pass admin.site.register(MenuTable, MenuTableAdmin)
あとはmigrateして終わりです。
python manage.py makemigrations python manage.py migrate
adminサイトにメニューテーブルが追加され、メニューを登録できるようになりました。
models.pyに登録する(注文管理テーブル)
メニューテーブルと同じことを注文管理テーブルでもやります。
書いてる途中で提供済判定を持たせるのを忘れていました。今度追加します。
part.3の課題
migrate周りで色々ハマってたら2時間経ってました。疲れたのでアプリからメニュー選択してテーブルに登録する処理はpart.3で書こうと思います。
おわり