python+django+sql学生信息管理后台开发


Posted in Python onJanuary 11, 2018

一、功能

实现对学生对个人信息的增删查改
实现后台对所有学生信息的操作

二、平台

windows+pycharm(python开发工具)

三、逻辑框图

四、代码展示

此后台采用的是MVC的风格模式进行编码

1.VIEWS部分

def hello(request):#功能选择
 # t = loader.get_template("hello.html")
 # c = RequestContext(request)
 return render_to_response("hello.html",context_instance=RequestContext(request))

def addstu(request):# 添加学生信息
 name = request.POST.get("name")
 age = request.POST.get("age")
 learn = request.POST.get("learn")
 newstu = Student(name=name,age=age,learn=learn)
 newstu.save()
 # c = RequestContext(request)
 # t = loader.get_template("check.html")
 return render_to_response("done.html",context_instance=RequestContext(request,{"age":age,"learn":learn,"name":name}))

def checkstu(request):#查询学生信息
 find = []
 stulist = Student.objects.all()
 name = request.POST.get("name")
 age = request.POST.get("age")
 learn = request.POST.get("learn")
 if name:
  find = Student.objects.filter(name__contains=name)
 elif age:
  find = Student.objects.filter(age=age)
 elif age:
  find = Student.objects.filter(learn__contains=learn)
 return render_to_response("check.html",context_instance=RequestContext(request,{"stulist":stulist,"find":find}))

def putmessage(request):#信息提交中转
 return render_to_response("add.html",context_instance=RequestContext(request))

def deletStu(request):#删除学生信息
 alert=""
 name = request.POST.get("name")
 age = request.POST.get("age")
 learn = request.POST.get("learn")
 delet = request.POST.get("delet")
 find = Student.objects.filter(name__contains =name)
 if not find:
  alert = u"没有找到名为" + name + u"的学生"
 elif not delet:
  elert=""
 else:
  find.delete()
  alert = u"成功删除该学生"
 return render_to_response("delet.html",context_instance=RequestContext(request,{"alert":alert,"student":find}))

def putmessage2(request):#信息提交中转2
 return render_to_response("put2.html",context_instance=RequestContext(request))


def rewrite(request):#学生信息更改
 aler=u"提示:"
 stulist = Student.objects.all()
 message = request.POST.get("message")
 old = request.POST.get("old")
 new = request.POST.get("new")
 if old == "name":
  student= Student.objects.filter( name__contains = message).update(name = new)
  aler+=u"信息修改成功"
 elif old== "age":
  student= Student.objects.filter( name__contains = message).update(age = new)
  aler+=u"信息修改成功"
 elif old =="learn":
  student= Student.objects.filter( name__contains = message).update(learn = new)
  aler+=u"信息修改成功"
 else:
  aler+=u"请输入正确的需要修改的信息类别(name,age或learn)"
 return render_to_response("show.html",context_instance=RequestContext(request,{"id":id,"message":message,"new":new,"stulist":stulist,"aler":aler}))

2.MODELS 部分

class Student(models.Model):#学生模板
 name = models.CharField(max_length=20)
 age = models.IntegerField()
 learn = models.CharField(max_length=20)
 def __unicode__(self):
  return self.name

class Teacher(models.Model):#老师模板
 name = models.CharField(max_length=20)
 age = models.IntegerField()
 teach = models.CharField(max_length=20)
 student = models.ManyToManyField( Student,through = "OneClass")
 def __unicode__(self):
  return self.name

class OneClass(models.Model):#班级模板
 name = models.CharField(max_length=50)
 teacher = models.ForeignKey(Teacher)
 student = models.ForeignKey(Student)
 def __unicode__(self):
  return self.name

3.CONTROLLER部分

URL配置

urlpatterns = [url(r'^blog/','blog.views.hello'),
 url(r'^adstu/','blog.views.addstu'),
 url(r'^add/','blog.views.putmessage'),
 url(r'^check/','blog.views.checkstu'),
 url(r'^readydel/','blog.views.putmessage2'),
 url(r'^delet/','blog.views.deletStu'),
 url(r'^show/','blog.views.rewrite'),
 url(r'^admin/', include(admin.site.urls)),]

表单的设置

__author__ = 'deven'
from django import forms
class ContentForm(forms.Form):
 username = forms.CharField()#max_length = 20)
 password = forms.IntegerField()#max_value= 20)

五、功能展示

1.主界面(功能选择)

python+django+sql学生信息管理后台开发

2.增加学生信息

python+django+sql学生信息管理后台开发

3.查询学生信息

python+django+sql学生信息管理后台开发

4.删除学生信息

python+django+sql学生信息管理后台开发python+django+sql学生信息管理后台开发

5.更改学生信息

python+django+sql学生信息管理后台开发python+django+sql学生信息管理后台开发

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现探测socket和web服务示例
Mar 28 Python
基于python实现微信模板消息
Dec 21 Python
python实现日常记账本小程序
Mar 10 Python
Python调用C++,通过Pybind11制作Python接口
Oct 16 Python
Python-while 计算100以内奇数和的方法
Jun 11 Python
Django使用中间件解决前后端同源策略问题
Sep 02 Python
Python之Class&Object用法详解
Dec 25 Python
django-crontab实现服务端的定时任务的示例代码
Feb 17 Python
pyecharts动态轨迹图的实现示例
Apr 17 Python
python代码区分大小写吗
Jun 17 Python
浅谈keras.callbacks设置模型保存策略
Jun 18 Python
python 实现的车牌识别项目
Jan 25 Python
hmac模块生成加入了密钥的消息摘要详解
Jan 11 #Python
快速了解Python中的装饰器
Jan 11 #Python
简单了解python模块概念
Jan 11 #Python
100行Python代码实现自动抢火车票(附源码)
Jan 11 #Python
python实现外卖信息管理系统
Jan 11 #Python
Python实现学生成绩管理系统
Apr 05 #Python
名片管理系统python版
Jan 11 #Python
You might like
php实现简单洗牌算法
2013/06/18 PHP
开启PHP Static 关键字之旅模式
2015/11/13 PHP
Yii2设置默认控制器的两种方法
2017/05/19 PHP
JQuery SELECT单选模拟jQuery.select.js
2009/11/12 Javascript
遨游,飞飞,IE,空中网 浏览器无提示关闭方法
2011/07/11 Javascript
javascript 手动给表增加数据的小例子
2013/07/10 Javascript
js css后面所带参数含义介绍
2013/08/18 Javascript
javascript实现数组中的内容随机输出
2015/08/11 Javascript
noty ? jQuery通知插件全面解析
2016/05/18 Javascript
Bootstrap轮播插件简单使用方法介绍
2016/06/21 Javascript
Javascript从数组中随机取出不同元素的两种方法
2016/09/22 Javascript
jQuery autoComplete插件两种使用方式及动态改变参数值的方法详解
2016/10/24 Javascript
关于vue-router路径计算问题
2017/05/10 Javascript
详解webpack进阶之插件篇
2017/07/06 Javascript
vue2.0 使用element-ui里的upload组件实现图片预览效果方法
2018/09/04 Javascript
解决echarts的多个折现数据出现坐标和值对不上的问题
2018/12/28 Javascript
JS中min函数实例讲解
2019/02/18 Javascript
js 解析 JSON 数据简单示例
2020/04/21 Javascript
微信小程序基于高德地图API实现天气组件(动态效果)
2020/10/22 Javascript
Python操作列表之List.insert()方法的使用
2015/05/20 Python
Python 中迭代器与生成器实例详解
2017/03/29 Python
pandas.loc 选取指定列进行操作的实例
2018/05/18 Python
Pandas 同元素多列去重的实例
2018/07/03 Python
用python介绍4种常用的单链表翻转的方法小结
2020/02/24 Python
scrapy与selenium结合爬取数据(爬取动态网站)的示例代码
2020/09/28 Python
Css3新特性应用之视觉效果实例
2016/12/12 HTML / CSS
澳大利亚玩具剧场:Toy Playhouse
2019/03/03 全球购物
如何提高JDBC的性能
2013/04/30 面试题
一家外企的面试题目(C/C++面试题,C语言面试题)
2014/03/24 面试题
党员教师工作决心书
2014/03/13 职场文书
四风问题个人对照检查材料
2014/09/26 职场文书
2015年毕业实习工作总结
2015/05/29 职场文书
田径运动会广播稿
2015/08/19 职场文书
vue实现可拖拽的dialog弹框
2021/05/13 Vue.js
Python字典和列表性能之间的比较
2021/06/07 Python
详解MySQL中timestamp和datetime时区问题导致做DTS遇到的坑
2021/12/06 MySQL