django 简单会议室预约(5)
再来看看views.py的后半部分,对数据库的增删改查
#获取学院列表
def get_acad_list():
room_list = ConfeRoom.objects.all() #对数据库的操作
acad_list = set()
for room in room_list:
acad_list.add(room.acad)
return list(acad_list)
#查看会议室
def viewroom(req):
username = req.session.get('username', '')
if username != '':
user = MyUser.objects.get(user__username=username)
else:
user = ''
acad_list=get_acad_list()
room_acad = req.GET.get("acad","all") #从前台点击选择学院,
if room_acad not in acad_list: #如果没有就全部显示
room_acad = "all"
room_list=ConfeRoom.objects.all()
else:
room_list=ConfeRoom.objects.filter(acad=room_acad)#只显示选定学院的会议室
content = {"active_menu":'viewroom',"acad_list":acad_list,"room_acad":room_acad,"room_list":room_list,"user":user}
return render_to_response('viewroom.html',content,context_instance=RequestContext(req))
#会议室详情
def detail(req):
username = req.session.get('username','')
if username != '':
user = MyUser.objects.get(user__username=username)
else:
user = ''
Id = req.GET.get("id","") #获得会议室主键ID号
req.session["id"]=Id
if Id == "":
return HttpResponseRedirect('/viewroom/')
try:
room = ConfeRoom.objects.get(pk=Id)#根据ID显示详细信息
ro =Detail.objects.get(pk=Id)
except:
return HttpResponseRedirect('/viewroom/')
img_list = Detail.objects.filter(room=room)
num_list = get_order_list()
if room.num not in num_list: #判断是否被预定,给定状态,给前台显示是否可以预定
or_sta="yes"
else:
or_sta="no"
content = {"active_menu":"viewroom","room":room,"img_list":img_list,"ro":ro,"or_sta":or_sta,"user":user}
return render_to_response('detail.html',content)
#预定
#获取预定列表
def get_order_list():
num_list=set()
order_list=Order.objects.all()
for order in order_list:
num_list.add(order.num)
return list(num_list)
def order(req):
username = req.session.get('username','')
if username != '':
user = MyUser.objects.get(user__username=username)
else:
user = ''
roid = req.session.get("id","") #预定,将数据保存到数据库
room = ConfeRoom.objects.get(pk=roid)
time = Detail.objects.get(name=room.name)
u = MyUser.objects.get(user__username=username)
order = Order(user=username,num=room.num,name=room.name,time=time.time,size=room.size,phone=u.phone)
order.save()
return render_to_response("index2.html",{"user":user},context_instance=RequestContext(req))
#查看预定信息
def myorder(req):
username = req.session.get('username','')
if username != '':
user = MyUser.objects.get(user__username=username)
else:
user = ''
try:
my_order=Order.objects.all() #索引数据库查看已预订信息
us_sta = "no"
return render_to_response("myorder.html",{"myorder":my_order,"us_sta":us_sta,"user":user},context_instance=RequestContext(req))
except:
us_sta = "yes"
return render_to_response("myorder.html",{"us_sta":us_sta,"user":user},context_instance=RequestContext(req))
#取消预定
def cancel(req):
username = req.session.get('username','')
if username != '':
user = MyUser.objects.get(user__username=username)
else:
user = ''
Id = req.GET.get("id","") #取消预订,删除数据
room =Order.objects.get(pk=Id)
room.delete()
return render_to_response("index.html",context_instance=RequestContext(req))
通过查django文档和学习别人的博客终于是把它写出来了,但是觉得有的地方还是写的不是很好,以后有时间再学习修改吧。
一个简单的预定过程完成了,虽然很简单但是我从中确实学到不少东西。
django 简单会议室预约(5)的更多相关文章
- django 简单会议室预约(6)
后台完了现在来看前端,前端用了一个bootstrap框架,看起来能好看点 先看一下文件结构:在djapp里创建了两个文件夹templates和static templates里面是要显示的页面,sta ...
- django 简单会议室预约(4)
基本的配置已经完成了,来看看最重要的views.py 先看看简单的注册登录功能,在django里有一个专门的模块用来验证用户信息 :所以只需要调用就好了: #-*-coding:utf-8 -*- f ...
- django 简单会议室预约(2)
--我们先打开settings.py 配置文件: import os #指明django APP目录路径 BASE_DIR = os.path.dirname(os.path.dirname(os.p ...
- django 简单会议室预约(1)
django 是python的一个web框架,为什么要用django,作者之前用过另一个框架flask,虽然flask比较简单很容易让人学,但是flask没有整体感,会让初学着茫然. 这里我们用dja ...
- django 简单会议室预约(3)
URL配置: 今天配置一下URL,打开urls.py配置如下: from django.conf.urls import patterns, include, url from djapp impor ...
- DJango简单的后台定义登录验证
第一步创建一个新的项目 APPLICATIONNAME : 表示创建子项目 第二步:找到主项目的url 进行 include 分发式url 简单的说,就是将app里边的url放在这里. 这里也可以找到 ...
- 基于django的会议室预订系统
会议室预订系统 一.目标及业务流程 期望效果: 业务流程: 用户注册 用户登录 预订会议室 退订会议室 选择日期:今日以及以后日期 二.表结构设计和生成 1.models.py(用户继承Abstrac ...
- Django简单的数据库操作
当然,本篇的前提是你已经配置好了相关的环境,这里就不详细介绍. 一. 在settings.py文件中设置数据库属性. 如下: DATABASES = { 'default': { 'ENGINE': ...
- 循序渐进Python3(十二) --2-- web框架之django简单实现oracle数据库操作
在 Django 中构建 Oracle 数据库支持的 Web 应用程序 了解如何配置 Django 以便与 Oracle 数据库交互,并使用 ORM 进行数据库连接. 产能在软 ...
随机推荐
- Linux_Oracle10 下载安装
Linux_Oracle10 安装文档及oracle下载地址 http://download.csdn.net/detail/u012750578/8177405 一.启动数据库服务 [root@hq ...
- 《AndroidStudio每日一贴》7. 怎样将本地变更文件移到其他的changelist?
操作方法: 进入Version Control -> Local Changes ,会显示本地变更列表分组. 假设你想将某个changelist中的文件转移到其他的changelist, 选中此 ...
- linux关于用户密码家目录总结
创建用户及其家目录useradd -d /home/tomcat -m tomcat接着修改密码passwd tomcat usermod -s /sbin/nologin + 用户名 禁止登录ssh ...
- logAnalyzer日志管理系统配置实例
LogAnalyzer日志管理系统配置实例 上个月我写过一篇<利用EventlogAnalyzer分析Linux日志>一文深受大家喜欢,今天我再次为大家讲解Linux系统下的一款开源的日志 ...
- Go 编码问题的解决方案
1.首先需要mahonia 这个包 go get github.com/axgle/mahonia 然后新建一个 func src 字符串 srcCode 字符串当前编码 tagCode 要转换的编码 ...
- php https链接
1.安装soap扩展 2.安装openssL 3.代码执行 function issure($sn){//通过soap链接接口 进行确认是否是正确的sn码 try{ $clie ...
- udacity android 学习笔记: lesson 4 part a
udacity android 学习笔记: lesson 4 part a 作者:干货店打杂的 /titer1 /Archimedes 出处:https://code.csdn.net/titer1 ...
- Spring : 征服数据库(一)
严格的说.这里征服的是关系型数据库.之后笔者会以MongoDB为例,给出非关系型数据库的解决方式,敬请期待. 获取连接,操作,关闭,不知所云的异常...是的,你受够了.在使用纯JDBC时你訪问数据库时 ...
- 改动GDAL库支持RPC像方改正模型
近期在做基于RPC的像方改正模型.方便对数据进行測试,改动了GDAL库中的RPC纠正模型,使之能够支持RPC像方改正參数. 以下是RPC模型的公式,rn,cn为归一化之后的图像行列号坐标,PLH为归一 ...
- Dynamics CRM 2015/2016 Web API:Unbound Custom Action 和 Bound Custom Action
今天我们再来看看Bound/Unbound Custom Action吧,什么是Custom Action?不知道的小伙伴们就out了,Dynamics CRM 2013就有了这个功能啦.和WhoAm ...