ORM是什么:即对象关系映射 为什么使用ORM: 能够让不会写SQL的程序员,使用面向对象的语法即可简单快捷的使用SQL,极大的提升开发效率 可以帮创建数据表,但是不能创建数据库 操作表中的数据:不用写SQL语句 HttpResponse (HTTP请求) render (渲染) redirect (重定向)
orm创建用户信息表
可以实现添加,删除功能
步骤详解 1.在setting中设置基础工作
2.在models.py中创建userInfo类: 具备信息:name名字,pwd密码,age年龄
class userInfo(models.Model):
name=models.CharField( verbose_name='名字',max_length=32)
pwd=models.CharField(verbose_name='密码',max_length=16)
age=models.IntegerField()
在mysql中查看表头是否已创建成功 mysql查看表的方法: 1.mysql -u root -p 2.create 表名; 3.show databases;(找到你创建的表名) 4.use 表名;(进入该表) 5.desc 表名;(查看表头) 6.select * from app01_表名;(表里面所含内容)
创建urls
from django.contrib import admin
from django.urls import path
from app01 import views
urlpatterns = [
path('admin/', admin.site.urls),
path('info/list/',views.info_list),
path('orm/',views.orm),
path('info/add/',views.info_add),
path('info/delete/',views.info_delete)
]
views文件中
from django.shortcuts import render,HttpResponse,redirect
from app01.models import userInfo
def orm(request):
userInfo.objects.create(name='小王',pwd='123',age=24)
userInfo.objects.create(name='lili',pwd='123',age=24)
return HttpResponse('成功')
def info_list(request):
datalist=userInfo.objects.all()
print(datalist)
return render(request,"info_list.html",locals())
def info_add(request):
if request.method=="GET":
return render(request,"info_add.html")
user=request.POST.get("user")
pwd=request.POST.get("pwd")
age=request.POST.get("age")
userInfo.objects.create(name=user,pwd=pwd,age=age)
return redirect("http://127.0.0.1:8003/info/list/")
def info_delete(request):
id=request.GET.get('id')
userInfo.objects.filter(pk=id).delete()
return redirect("http://127.0.0.1:8003/info/list/")
用户网页和删除功能制作`
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>INFO列表</h1>
<a href="/info/add/">添加</a>
<table border="1">
<thead>
<tr>
<th>ID</th>
<th>名字</th>
<th>密码</th>
<th>年龄</th>
<th>操作</th>
</tr>
</thead>
<tbody>
{% for item in datalist %}
<tr>
<th>{{ item.id }}</th>
<th>{{ item.name }}</th>
<th>{{ item.pwd }}</th>
<th>{{ item.age }}</th>
{# 删除指定的用户id
<th><a href="/info/delete/?id={{ item.id }}" class="button">删除</a></th>
</tr>
{% endfor %}
</tbody>
</table>
</body>
</html>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<h1>添加用户</h1>
<form action="/info/add/" method="post">
{% csrf_token %}
<input type="text" name="user" placeholder="用户名">
<input type="password" name="pwd" placeholder="密码">
<input type="text" name="age" placeholder="年龄">
<input type="submit" value="提交">
</form>
</body>
</html>
|