首页 > 编程 > Python > 正文

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

2019-11-25 15:22:35
字体:
来源:转载
供稿:网友

一、功能

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

二、平台

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.nameclass 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.nameclass 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 formsclass ContentForm(forms.Form): username = forms.CharField()#max_length = 20) password = forms.IntegerField()#max_value= 20)

五、功能展示

1.主界面(功能选择)

2.增加学生信息

3.查询学生信息

4.删除学生信息

5.更改学生信息

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持武林网。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表