2019.1.1新年快樂,今天從新複習了資料庫的增刪改查
阿新 • • 發佈:2019-01-08
這是一個酒店的模型
from django.db import models # Create your models here. class Client(models.Model): GENDER_CHOICES=( ('male',u"男"), ('female',u"女"), ('secret',u"保密") ) name =models.CharField(max_length=100) gender =models.CharField(max_length=10,choices=GENDER_CHOICES,default="secret") telephone = models.CharField(max_length=11,unique=True) ID_num=models.CharField(max_length=20,unique=True) def __str__(self): return "<Client:({name},{gender},{telephone},{ID_num})>".format(name=self.name,gender=self.gender,telephone=self.telephone,ID_num=self.ID_num) class Room(models.Model): TYPE_CHOICES =( (1,"big"), (2,"middle"), (3,"small") ) STATE_CHOICES = ( (1,u"empty"), (2,u"full") ) num = models.IntegerField() type =models.CharField(max_length=2,choices =TYPE_CHOICES) address =models.TextField() price =models.FloatField() state =models.CharField(max_length=2,choices=STATE_CHOICES,default=1) remark=models.TextField(null=True) class RoomOrder(models.Model): client = models.ForeignKey("Client",on_delete=models.CASCADE ) room =models.ForeignKey("Room",on_delete=models.CASCADE) startDate = models.DateTimeField(auto_now_add=True) endDate = models.DateTimeField(auto_now=True) remark = models.TextField() class Meta: ordering =['-startDate']
配置資料庫
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': 'restaurant',
'HOST': '127.0.0.1',
'PORT': '3306',
'USER': 'root',
'PASSWORD':'7923161',
}
}
碼農們的必備技能增刪改查。複習完畢。明天貼上實戰專案。
from django.shortcuts import render from django.shortcuts import HttpResponse from datetime import datetime from .models import RoomOrder,Client,Room # Create your views here. def index(request): return HttpResponse("酒店頁面") def roomorder(request): #增加資料 # client =Client(name='羅偉中',gender='male',telephone=13698546412,ID_num=4419041975012123) # client.save() # return HttpResponse("酒店下單系統") # 查詢並且改動資料 # client =Client.objects.get(pk=2) # client.gender="female" # client.save() #刪除資料 client = Client.objects.get(pk=2) client.delete() print(client) return HttpResponse("我在查詢")