Django实战,小网站实现增删改查
直接上代码
视图:
from django.shortcuts import render,render_to_response, redirect
from submit import models # Create your views here. def submit(request):
if request.method == "POST":
username = request.POST.get("username", None)
password = request.POST.get("password", None)
models.UserInfo.objects.create(username=username, password=password)
user_list = models.UserInfo.objects.all()
return render(request, "submit.html", {"data": user_list}) def search(request):
#if request.method == "POST":
username = request.GET.get("username", None)
results = models.UserInfo.objects.filter(username__icontains=username) return render(request, "search.html", {"result": results}) def delete(request):
if request.method == "GET":
nid = request.GET.get("id")
models.UserInfo.objects.filter(id=nid).delete()
return render(request, "submit.html") def edit(request):
if request.method == "GET":
id = request.GET.get("id", None)
username = request.GET.get("username", None)
password = request.GET.get("password", None)
models.UserInfo.objects.filter(id=id).delete()
return render(request, "edit.html", {"username": username, "password": password})
数据库设计
from django.db import models # Create your models here. class UserInfo(models.Model):
username = models.CharField(max_length="")
password = models.CharField(max_length="")
模板
submit.html
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h1>添加数据</h1>
<form action="/submit/" method="post">
<input type="text" name="username"/>
<input type="password" name="password"/>
<input type="submit" value="提交"/> </form>
<h1>查询数据</h1>
<h1>请输入用户名</h1>
<form action="/search/" method="get">
<input type="text" name="username"/>
<input type="submit" value="查询"/>
</form>
<h1>输出数据</h1>
<form action="/submit/" method="get">
<table border="">
<thead>
<td>ID</td>
<td>用户名</td>
<td>密码</td>
<td>操作</td>
{% for line in data %}
<tr>
<td>{{ line.id }}</td>
<td>{{ line.username }}</td>
<td>{{ line.password }}</td>
<td> <a href="/edit?id={{ line.id }}&username={{ line.username }}&password={{ line.password }}">编辑</a>
<a href="/delete?id={{ line.id }}">删除</a>
</td>
</tr>
{% endfor %}
</body>
</html>
submit.html
edit.html
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/html">
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h1>edit</h1>
<form action="/submit/" method="post"> <h6>用户名</h6><input type="text" name="username" value={{ username }}>
<br/>
<h6>密码</h6><input type="text" name="password" value={{ password }}>
<br/>
<input type="submit" value=" 确认修改"/> </form>
</body>
</html>
edit.html
<!DOCTYPE html>
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
</head>
<body>
<h1>请输入用户名</h1>
<form action="/search/" method="post">
<input type="text" name="username"/>
<input type="submit" value="查询"/>
</form>
<h1>查询结果</h1>
<form action="/search/" method="get">
<table border="">
<thead>
<td>ID</td>
<td>用户名</td>
<td>密码</td>
<td>操作</td>
{% for rts in result %}
<tr>
<td>{{ rts.id }}</td>
<td>{{ rts.username }}</td>
<td>{{ rts.password }}</td>
<td> <a href="/edit?id={{ rts.id }}&username={{ rts.username }}&password={{ rts.password }}">编辑</a>
<a href="/delete?id={{ rts.id }}">删除</a>
</td>
</tr>
{% endfor %}
</thead>
</table>
</form>
</body>
</html>
search.html
路由:
前台页面
Django实战,小网站实现增删改查的更多相关文章
- Django 自带的ORM增删改查
通过Django来对数据库进行增删改查 1 首先创建类,在app应用程序里面的model模块里面创建类,写好数据库信息,方便我们待会初始化: 2 创建在django项目里面的settings里面添加 ...
- 基于renren-fast的快速入门项目实战(实现报表增删改查)
基于renren-fast的快速入门项目实战(实现报表增删改查) 说明:renren-fast是一个开源的基于springboot的前后端分离手脚架,当前版本是3.0 官方开发文档需付费,对于新手而言 ...
- Django 文件配置、pycharm及django连接数据库、表的增删改查 总结
静态文件配置 1.你在浏览器中输入网址能够有响应的资源返回给你 是因为后端已经提前给你开设该资源的接口,也就意味着你所能 访问到的资源 都是人家事先定义好的 2.django如何给用户开设资源接口呢? ...
- Django中多表的增删改查操作及聚合查询、F、Q查询
一.创建表 创建四个表:书籍,出版社,作者,作者详细信息 四个表之间关系:书籍和作者多对多,作者和作者详细信息一对一,出版社和书籍一对多 创建一对一的关系:OneToOne("要绑定关系的表 ...
- Django之model基础(增删改查)
一.ORM 映射关系 表名 <-------> 类名 字段 <-------> 属性 表记录 <------->类实例对象二.创建表(建立模型) 在创建表之前的准备 ...
- Django REST framework 五种增删改查方法
Django-DRF-视图的演变 版本一(基于类视图APIView类) views.py: APIView是继承的Django View视图的. 1 from .serializers impor ...
- MyBatis初级实战之二:增删改查
欢迎访问我的GitHub https://github.com/zq2599/blog_demos 内容:所有原创文章分类汇总及配套源码,涉及Java.Docker.Kubernetes.DevOPS ...
- django中对数据库的增删改查
Django的配置文件时settings.py中的 TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplate ...
- Django 强大的ORM之增删改查
Django orm Django——orm进阶 测试Django中的orm 表结构: models.py class User(models.Model): name = model ...
随机推荐
- Mysql的学习笔记(一)--检验数据库是否安装成功以及一些入门的简单的dos命令
一:如何检验数据库是否安装成功: 1:以管理员的身份打开命令提示符,具体如何用管理员的身份打开请参考下面 https://jingyan.baidu.com/article/e73e26c0f87c2 ...
- 吞吐量(TPS)、QPS、并发数、响应时间(RT)概念
开发的原因,需要对吞吐量(TPS).QPS.并发数.响应时间(RT)几个概念做下了解,查自百度百科,记录如下:1. 响应时间(RT) 响应时间是指系统对请求作出响应的时间.直观上看,这个指标与人对软 ...
- 关于cocos2d-x面试的问题
关于高效渲染的问题: 1.先说下渲染批次:这是游戏引擎中一个比较重要的优化指标,指的是一次渲染凋用.也就是说,渲染的次数越少,游戏的运行效率越高. 2.CCSpriteBatchNode就是cocos ...
- OC的内存管理和@class
1. 基本原理 1. 什么是内存管理 ➢ 移动设备的内存极其有限,每个app所能占用的内存是有限制的 ➢ 当app所占用的内存较多时,系统会发出内存警告,这时得回收一些不需要再使用的内存空间.比如回收 ...
- 浏览器输入URL加载的全过程都发生了什么事情,你知道?
什么是URL: 统一资源定位符(URL,英文 Uniform / Universal Reaource Locator 的缩写) 标准的URL由服务类型(协议).存放资源的主机域名(可以是域名或者ip ...
- Django的分页器(paginator)
先导入模块: from django.core.paginator import Paginator, EmptyPage, PageNotAnInteger 分页器paginator 下面的所有方法 ...
- POJ2251-Dungeon Master
题意:给出一三维空间的地牢,要求求出由字符'S'到字符'E'的最短路径移动方向可以是上,下,左,右,前,后,六个方向,每移动一次就耗费一分钟,要求输出最快的走出时间.不同L层的地图,相同RC坐标处是连 ...
- [菜鸟弄nginx]nginx ---- 同一个server下根据host 配置不同的error_page页
有一个需求: 两个域名指向同一个nignx,不同的域名404跳转页面不同.如www.y.com跳到www.y.com/error.html ,www.j.com跳到www.j.com/errorxxx ...
- 浅谈PipelineDB系列一: Stream数据是如何写到Continuous View中的
PipelineDB Version:0.9.7 PostgreSQL Version:9.5.3 PipelineDB的数据处理组件: 从上图来看主要就是pipeline_streams,strea ...
- 约瑟夫问题 小孩报数问题poj3750
小孩报数问题 Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 15228 Accepted: 6778 Descripti ...