django与mysql实现增删_django与mysql实现简单的增删查改

模型定义

from django.db import models

class Grades(models.Model):

g_name = models.CharField(max_length=20)

create_date = models.DateTimeField()

girl_num = models.IntegerField()

boy_num = models.IntegerField()

isDelete = models.BooleanField(default=False)

def __str__(self):

return self.g_name

class Meta:

db_table = 'grades'

class Students(models.Model):

s_name = models.CharField(max_length=20)

s_gender = models.BooleanField(default=True)

s_age = models.IntegerField()

conetend = models.CharField(max_length=20)

isDlete = models.BooleanField(default=False)

# 关联外键

s_grade = models.ForeignKey("Grades")

def __str__(self):

return self.s_name

class Meta:

db_table = 'students'

url

from django.conf.urls import url

from user import views

urlpatterns = [

url(r'^show_info/',views.show_info,name='show_info'),

url(r'^add_stu/',views.add_stu,name='add_stu'),

url(r'^del_stu/(\d+)/',views.del_stu,name='del_stu'),

url(r'^mod_stu/(\d+)/',views.mod_stu,name='mod_stu'),

url(r'^sel_stu/',views.sel_stu,name='sel_stu'),

]

视图函数定义

from django.shortcuts import render

from django.http import HttpResponseRedirect

from django.urls import reverse

from user.models import Students,Grades

def show_info(request):

if request.method == 'GET':

stus = Students.objects.all()

return render(request,'info.html',{'stus':stus})

def add_stu(request):

if request.method == 'GET':

grades = Grades.objects.all()

return render(request,'add.html',{'grades':grades})

if request.method == 'POST':

name = request.POST.get('name')

age = request.POST.get('age')

gender = request.POST.get('sex')

content = request.POST.get('msg')

grade = request.POST.getlist('check')[0]

sgrade = Grades.objects.get(g_name=grade)

Students.objects.create(s_name=name,s_age=age,s_gender=gender,contend=content,s_grade=sgrade)

return HttpResponseRedirect(reverse('user:show_info'))

def del_stu(request,id):

if request.method == 'GET':

Students.objects.get(pk=id).delete()

return HttpResponseRedirect(reverse('user:show_info'))

def mod_stu(request,id):

if request.method == 'GET':

stu = Students.objects.get(pk=id)

grades = Grades.objects.all()

return render(request,'mod.html',{'stu':stu,'grades':grades})

if request.method == 'POST':

name = request.POST.get('name')

age = request.POST.get('age')

gender = request.POST.get('gender')

grade = request.POST.getlist('check')[0]

u_grade = Grades.objects.get(g_name=grade)

Students.objects.filter(pk=id).update(s_name=name,s_age=age,s_gender=gender,s_grade=u_grade)

return HttpResponseRedirect(reverse('user:show_info'))

def sel_stu(request):

if request.method == 'GET':

return render(request,'sel.html')

if request.method == 'POST':

name = request.POST.get('name')

try:

stu = Students.objects.get(s_name=name)

return render(request, 'sel.html', {'stu': stu})

except:

return render(request,'sel.html',{'error':'该学生不存在'})

页面html定义

添加页

{% extends 'base.html' %}

{% block content %}

{% csrf_token %}

姓名:

年龄:

性别:

描述:

{% for grade in grades %}

{{grade.g_name}}

{% endfor %}

{% endblock %}

修改页

{% extends 'base.html' %}

{% block content %}

{% csrf_token %}

姓名:

年龄:

性别:

{% for grade in grades %}

{{grade.g_name}}

{% endfor %}

{% endblock %}

查询页

{% extends 'base.html' %}

{% block content %}

{% csrf_token %}

请输入学生姓名:

{% if stu %}

序号姓名年龄性别简介班级

{{stu.id}}{{stu.s_name}}{{stu.s_age}}{{stu.s_gender}}{{stu.contend}}{{stu.s_grade.g_name}}

{% endif %}

{{error}}

{% endblock %}

信息页

{% extends 'base.html' %}

{% block content %}

序号姓名年龄性别班级班级成立时间删除学生修改学生

{% for stu in stus %}

{{forloop.counter}}{{stu.s_name}}{{stu.s_age}}{{stu.s_gender}}{{stu.s_grade.g_name}}{{stu.s_grade.create_date}}删除修改

{% endfor %}

增加学生

查询学生

{% endblock %}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/529717.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

服务器本地文件,云服务器 本地文件

云服务器 本地文件 内容精选换一换在云服务器上搭建网站后,部分客户通过本地网络访问网站时出现偶发性无法访问的情况。确认客户使用的本地网络。若客户的本地网络是NAT网络(本地主机通过NAT功能使用公网IP地址访问弹性云服务器),可能会导致该问题。若客…

mysql oracle 备份数据库备份_完整备份Oracle数据库

修改备份文件的有效时间(必须用spfile启动数据库)SQLgt; alter system set control_file_record_keep_time30 scopeboth;修改备份文件的有效时间(必须用spfile启动数据库)SQL> alter system set control_file_record_keep_time30 scopeboth;System altered.先启动归档SQL>…

修改域服务器IP,域控制器迁移以及修改服务器ip

windows2003域控制器如果服务器太旧就需要迁移至新的服务器上,经本人实验,无误。windows server 2003 域控制器转移迁移准备工作:1. 在Windows Server 2003上运行dcpromo命令将其升级为域控制器,并在升级时选择使其成为现有Windows 2003域的额外的域控制器。2. 在Wi…

mysql注入fuzz字典_sql注入fuzz bypass waf

本帖最后由 xmidf 于 2018-7-11 10:16 编辑作者:whynot 转自:先知0x0 前言这里是简单对sql注入绕过waf的一个小总结,非安全研究员,这里不讲原理,关于原理搜集了一些其他大佬的文章(文章在最下面请自取)&#xff0…

python如何开发网站_如何用Python写一个小网站?

一、准备 python基础相关准备:pygame的基础知识,参考目光博客的“用Python和Pygame写游戏-从入门到精通”安python 3.8.0 在python官网下载,不多说。安装pygame,命令:pip install pygame如安装较慢,可以参考…

python项目选择背景_Python - - 项目实战 - - 游戏背景

目标背景交替滚动的思路确定显示游戏背景01,背景交替滚动的思路确定运行 备课代码,观察 背景图像的显示效果:游戏启动后,背景图像 会 连续不断地 向下方 移动在 视觉上 产生英雄的飞机不断向上方飞行的 错觉 - - 在很多跑酷游戏中…

【AI】人工智能复兴的推进器之自然语言处理

目录 一、什么是自然语言处理 二、词袋模型 三、向量 四、代码示例 五、大模型和自然语言处理 接上篇:【AI】人工智能复兴的推进器之机器学习-CSDN博客 一、什么是自然语言处理 自然语言处理(Natural Language Processing,NLP&#xf…

css阻止换行_CSS中,如何处理短内容和长内容?

本文已经过原作者 shadeed 授权翻译。当我们使用 CSS 构建布局时,考虑长短文本内容很重要,如果能清楚地知道当文本长度变化时需要怎么处理,可以避免很多不必要的问题。在许多情况下,添加或删除一个单词会改变 UI 的外观&#xff0…

duilib设置透明窗口_界面开发心得与Duilib | 学步园

一、设置窗体透明度和指定透明色(如指定了黑色,即所有黑色的部分将会变得透明)DWORD dwExStyleGetWindowLong(m_hWnd,GWL_EXSTYLE);if((dwExStyle&WS_EX_LAYERED)!WS_EX_LAYERED)SetWindowLong(m_hWnd,GWL_EXSTYLE,dwExStyle|WS_EX_LAYERED);HMODULE hInst Loa…

influxdb无法实现关联表_InfluxDb专业术语

InfluxDb专业术语重复是最好的学习方式,我们再重复一些Influx的概念吧,虽然很多已经讲过,甚至上一课已经讲了。我发现我自己还是有点啰嗦,不过这可能是一种好的学习方法哦。聚合函数aggregationaggregation是一个InfluxQL的函数&a…

mysql排序区分大小写吗_MySQL操作数据时区分大小写

一般情况下使用SQL语句执行update login_ticket set status1 where ticket‘ABC‘会将ticket’abc‘的数据也改掉,那么需要在列名ticket的后面加上collate utf8_binupdate login_ticket set status1 where ticket COLLATE utf8_bin‘ABC‘这里的collate后面的是指该…

java的四种访问权限_Java四种访问权限

一、访问权限简介访问权限控制: 指的是本类及本类内部的成员(成员变量、成员方法、内部类)对其他类的可见性,即这些内容是否允许其他类访问。Java 中一共有四种访问权限控制,其权限控制的大小情况是这样的:public > protected …

java分割汉字_Java分割中英文,并且中文不能分割一半?

最近准备入其他坑位。在面试过程中,遇到下面这题笔试题,拿出来分享分享。题目:编写一个截取字符串的函数,输入为一个字符串和字节数,输出为按字节截取的字符串。但是要保证汉字不被截半个,如“我ABC”4&…

full gc JAVA_java触发full gc的几种情况概述

前言近期被问及这个问题,在此记录整理一下。System.gc()方法的调用此方法的调用是建议JVM进行Full GC,虽然只是建议而非一定,但很多情况下它会触发 Full GC,从而增加Full GC的频率,也即增加了间歇性停顿的次数。强烈影响系建议能不使用此方法就别使用,让…

java excel条件格式_Java 设置Excel条件格式(高亮条件值、应用单元格值/公式/数据条等类型)...

概述在Excel中,应用条件格式功能可以在很大程度上改进表格的设计和可读性,用户可以指定单个或者多个单元格区域应用一种或者多种条件格式。本篇文章,将通过Java程序示例介绍条件格式的设置方法,设置条件格式时,因不同设…

java order()_java.util.Collections.reverseOrder()

描述reverseOrder()方法被用来获取强加实现可比接口的对象collection的自然顺序相反的比较器。声明以下是java.util.Collections.reverseOrder()方法的声明。public static Comparator reverseOrder()参数NA返回值方法调用返回一个比较器,该比较器对实现Comparable接…

jsp mysql登录 demo_java jsp+servlet+mysql实现登录网页设计

涉及以下几个文件:1。登录页面 login.jsp2,成功跳转页面 success.jsp3,失败跳转页面 fail.jsp4,servlet 处理类 LoginTestServlet.java5,配置文件 web.xml--------------------------------------------- 依次看代码 …

libsvm java下载_一个基于LIBSVM(JAVA)的股票预测demo

【实例简介】一个基于LIBSVM的股票价格预测程序,采用随机森林算法对样本进行训练和预测,使用的编程语言为JAVA。【实例截图】【核心代码】stock-master└── stock-master├── data│ ├── 000752.csv│ ├── 300251.csv│ ├── 300329.c…

mysql 家谱树查询_中国家谱族谱数据库可以登录、查询了

原标题:中国家谱族谱数据库可以登录、查询了中青在线武汉6月6日电(党波涛 中国青年报中青在线记者 雷宇)数据量全球第一,最早可追溯到明朝万历年间。华中师范大学中国农村研究院今天对外发布,由该院建设的中国家谱族谱数据库正式上线&#xf…

mysql-5.5.56配置_mysql 5.5.56免安装版配置方法

mysql 5.5.56免安装版配置方法发布时间:2020-10-18 23:16:23来源:脚本之家阅读:74作者:阿安安mysql 5.5.56免安装版配置方法,本文通过文字代码详解,具体内容如下所示:1. 下载mysql-5.5.56-winx6…