一、目标
- 会议室预定
二、业务流程
- 用户登录
- 预定会议室
- 退订会议室
- 选择日期;今日以及以后日期
三、表结构设计
- 用户表
- 会议室表
- 记录表
用户ID 会议室ID 时间 时间段
user_id room_id data timeline
1 1 2017-12-11 1
from django.db importmodels#Create your models here.
classMeetingRoom(models.Model):'''会议室'''name= models.CharField(max_length=32,verbose_name="会议室名称")classMeta:
verbose_name_plural= "会议室"
def __str__(self):returnself.nameclassReserveRecord(models.Model):'''预定记录表'''data= models.DateField(verbose_name="预定日期")
user= models.ForeignKey(to="UserInfo",verbose_name="预订人")
room= models.ForeignKey(to="MeetingRoom",verbose_name="预定房间")
time1=(
(1,"8.00"),
(2,"9.00"),
(3,"10.00"),
(4,"11.00"),
(5,"12.00"),
(6,"13.00"),
(7,"14.00"),
(8,"15.00"),
(9,"16.00"),
(10,"17.00"),
(11,"18.00"),
(12,"19.00"),
(13,"20.00"),
)
timeline= models.IntegerField(choices=time1,verbose_name="预定时间")classMeta:
verbose_name_plural= "预订记录表"unique_together=(
('data', 'timeline', 'room')
)def __str__(self):returnself.user.usernameclassUserInfo(models.Model):'''用户信息'''username= models.CharField(max_length=32,verbose_name="用户名",unique=True)
password= models.CharField(max_length=64,verbose_name="密码")classMeta:
verbose_name_plural= "用户信息"
def __str__(self):return self.username
四、操作细节以及设计的知识点
=========================后端页面=================
我们可以用ajax的方式,发送请求。后端返回数据,直接在页面中渲染。
如何生成这样的数据
data = [
[{"text":"天上人间","attrs":{}},{"text":"海燕","attrs":{"room_id":1,"time_id":1,"class":"chosen"}},{"text":"","attrs":{"room_id":1,"time_id":1}},{"text":"","attrs":{"room_id":1,"time_id":1}},{"text":"","attrs":{"room_id":1,"time_id":1}}],
[{"text":"夏威夷","attrs":{}},{"text":"","attrs":{"room_id":2,"time_id":2}},{"text":"Frank","attrs":{"room_id"