基于django框架web项目实战开发四 django+mysql实现增删查改功能

版权声明:请点击关注 https://blog.csdn.net/weixin_42914677/article/details/89763415

本次内容是基于上一节的基础上而进行,上次内容:https://blog.csdn.net/weixin_42914677/article/details/89743027

第一步:编写增删查改功能代码

打开项目myweb目录下view.py,

并编写以下代码

view.py

from django.shortcuts import render, redirect
from myweb.models import User
# Create your views here.
#页面查询用户信息
def queryUsers(request):
    # 到数据库查询用户信息
    us = User.objects.all()
    # 将数据发给页面
    context = {"ls": us}
    return render(request, "users.html", context)

 # 打开添加页面
def openAdd(request):
    return render(request, "userAdd.html")

 # 保存数据
def saveUser(request):
    username = request.GET.get('username')
    password = request.GET.get('password')
    User.objects.create(username=username, password=password)
    return redirect("/myweb/queryUsers")

    #打开修改页面
def openEdit(request):
    id = request.GET.get('id')
    # 到数据库查询用户信息
    m = User.objects.filter(id=id).first()
    # 将数据发给页面
    context = {"m": m}
    return render(request, "userEdit.html", context)

    #更新数据
def updateUser(request):
    id = request.GET.get('id')
    username = request.GET.get('username')
    password = request.GET.get('password')
    User.objects.filter(id=id).update(username=username, password=password)
    return redirect("/myweb/queryUsers")

    #删除数据
def deleteUser(request):
    id = request.GET.get('id')
    User.objects.filter(id=id).delete()
    return redirect("/myweb/queryUsers")



第二步:编写html页面

在工程目录下的templates新建三张页面

users.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Users</title>
</head>
<body>
<a href="/myweb/openUserAdd" >添加</a>
<table border="1">
        <thead>
        <tr>
            <th>ID</th>
            <th>名称</th>
            <th>操作</th>
        </tr>
        </thead>
        <tbody>
        {% for row in ls %}
            <tr>
                <td>{{ row.id }}</td>
                <td>{{ row.username }}</td>
                <td>
                    <a href="/myweb/deleteUser?id={{ row.id }}">删除</a>
                    |
                    <a href="/myweb/openEdit?id={{ row.id }}">编辑</a>
                </td>
            </tr>
        {% endfor %}
        </tbody>
    </table>

</body>
</html>

userAdd.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册</title>
</head>
<body>
<form action="/myweb/saveUser" method="GET">
    {% csrf_token %}
    账号:<input name="username"><br>
    密码:<input name="password"><br>
    <input type="submit" value="添加">
</form>

</body>
</html>

userEdit.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>注册</title>
</head>
<body>
<form action="/myweb/updateUser" method="GET">
    {% csrf_token %}
    <input type="hidden" name="id" value="{{ m.id }}">
    账号:<input name="username"  value="{{ m.username }}"><br>
    密码:<input name="password"  value="{{ m.password }}"><br>
    <input type="submit" value="提交">
</form>

</body>
</html>

第三步:设置路由

在工程目录下,找到urls.py

urls.py

from django.contrib import admin
from django.urls import path, include

urlpatterns = [
    path('admin/', admin.site.urls),
    path('myweb/', include('myweb.adminurls')),
]

在项目目录下新建adminurls.py,并编写以下代码

adminurls.py

from django.urls import path
from myweb import views

urlpatterns = [
    path('', views.queryUsers),
    path('queryUsers/', views.queryUsers),
    path('openUserAdd/', views.openAdd),
    path('saveUser/', views.saveUser),
    path('openEdit/', views.openEdit),
    path('updateUser/', views.updateUser),
    path('deleteUser/', views.deleteUser),
]

第四步:启动工程,测试

启动完成后,打开浏览器输入:http://localhost:8000/myweb/

添加数据后,数据显示

功能编写完成,欢迎评论!!!

猜你喜欢

转载自blog.csdn.net/weixin_42914677/article/details/89763415