2023年Django大二下学期期末复习

这篇具有很好参考价值的文章主要介绍了2023年Django大二下学期期末复习。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

注册app01

写视图函数

新建templates文件夹,在里面新建index.html 

写路由,访问我们写的index页面

开始在models里面创建表 

在settings.py里面写好迁移数据库的代码,迁移数据库

迁移数据库代码

在数据库里面添加数据 

添加添加功能

​编辑 实现删除功能 

源码:


注册app01

2023年Django大二下学期期末复习

写视图函数

2023年Django大二下学期期末复习

新建templates文件夹,在里面新建index.html 

2023年Django大二下学期期末复习

 写路由,访问我们写的index页面

2023年Django大二下学期期末复习

开始在models里面创建表 

2023年Django大二下学期期末复习

在settings.py里面写好迁移数据库的代码,迁移数据库

2023年Django大二下学期期末复习

记得在与settings.py同级的_init_.py写下如下代码,否则迁移报错 

2023年Django大二下学期期末复习

迁移数据库代码

python manage.py makemigrations

python manage.py migrate

2023年Django大二下学期期末复习

 2023年Django大二下学期期末复习

在数据库里面添加数据 

2023年Django大二下学期期末复习

 写视图函数student_list

2023年Django大二下学期期末复习

获取数据库全部用户信息,再渲染,返回给用户 

创建student_list.html,将表中的字段显示在表中

2023年Django大二下学期期末复习

写路由,访问页面

2023年Django大二下学期期末复习

2023年Django大二下学期期末复习 显示成功

添加添加功能

写student_add函数,请求方法必须是GET才能返回页面

2023年Django大二下学期期末复习

接下来写增加的页面,表单里面的action是路由,但是前面和后面都必须有/,不然会出现page nor found!错误 /student/add/ 

2023年Django大二下学期期末复习

如果不写{% csrf_token %}就会出现forbidden错误 

访问页面

2023年Django大二下学期期末复习

2023年Django大二下学期期末复习

2023年Django大二下学期期末复习

在student_list添加然后跳转到本页面

2023年Django大二下学期期末复习

实现删除功能 

先写student_delete函数,把请求获取到的id赋值给sid,删除id=sid那一行,写法为....../student/delete/?sid=3  意思为删除id为3的那一整行

2023年Django大二下学期期末复习

写路由,务必按照student/delete/这个写法写,后面有个反斜杠,如果是delete,就必须加一个/,不然就会出现page not found! 

2023年Django大二下学期期末复习

然后在student_list每一行后面添加删除链接,链接不能有空格,有空格则出现page not found错误! 

2023年Django大二下学期期末复习

Over!

源码:

student_add.html:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
    <form action="/student/add" method="post">
    {% csrf_token %}
        <input type="text" name="name" placeholder="姓名"><br>
        <input type="text" name="age" placeholder="年龄"><br>
        <input type="text" name="number" placeholder="电话"><br>
        <input type="text" name="email" placeholder="邮箱"><br>
        <input type="submit" value="提交">

    </form>
</body>
</html>

student_list.html:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Title</title>
</head>
<body>
<h1>学生信息表</h1>
<a href="/student/add">点击添加学生</a>
<table border="2">
    <thead>
        <tr>
            <th>姓名</th>
            <th>年龄</th>
            <th>电话</th>
            <th>邮箱</th>
        </tr>
    </thead>
    <tbody>
    {% for obj in data %}
        <tr>

        <td>{{ obj.name }}</td>
        <td>{{ obj.age }}</td>
        <td>{{ obj.number }}</td>
        <td>{{ obj.email }}</td>
        <td><a href='/student/delete/?sid={{ obj.id }}'>删除</a></td>
        </tr>

    {% endfor %}
    </tbody>
</table>
</body>
</html>

models:

from django.db import models


# Create your models here.
class studentInfo(models.Model):
    name = models.CharField(max_length=32)
    age = models.CharField(max_length=32)
    number = models.CharField(max_length=32)
    email = models.CharField(max_length=32)

views:

from django.http import HttpResponse
from django.shortcuts import render, redirect

# Create your views here.
from app01.models import studentInfo


def index(request):
    return render(request, 'index.html')


def student_list(request):
    data_list = studentInfo.objects.all()
    return render(request, 'student_list.html', {'data': data_list})


def student_add(request):
    if request.method == 'GET':
        return render(request, 'student_add.html')

    name = request.POST.get('name')
    age = request.POST.get('age')
    number = request.POST.get('number')
    email = request.POST.get('email')

    studentInfo.objects.create(name=name, age=age, number=number, email=email)

    return redirect('/student/list/')


def student_delete(request):
    sid = request.GET.get("sid")
    studentInfo.objects.filter(id=sid).delete()
    return redirect('/student/list')

 urls:文章来源地址https://www.toymoban.com/news/detail-478517.html

from django.contrib import admin
from django.urls import path
from app01 import views
urlpatterns = [
    path('admin/', admin.site.urls),
    path('index/',views.index),
    path('student/list/',views.student_list),
    path('student/add/',views.student_add),
    path('student/delete/',views.student_delete),
]

到了这里,关于2023年Django大二下学期期末复习的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【期末不挂科-C++考前速过系列P5】大二C++实验作业-多态性(3道代码题)【解析,注释】

    前言 大家好吖,欢迎来到 YY 滴C++考前速过系列 ,热烈欢迎! 本章主要内容面向接触过C++的老铁 主要内容含: 欢迎订阅 YY 滴C++专栏!更多干货持续更新!以下是传送门! YY的《C++》专栏 YY的《C++11》专栏 YY的《Linux》专栏 YY的《数据结构》专栏 YY的《C语言基础》专栏 YY的《

    2024年01月25日
    浏览(54)
  • 【期末不挂科-C++考前速过系列P4】大二C++实验作业-继承和派生(3道代码题)【解析,注释】

    前言 大家好吖,欢迎来到 YY 滴C++考前速过系列 ,热烈欢迎! 本章主要内容面向接触过C++的老铁 主要内容含: 欢迎订阅 YY 滴C++专栏!更多干货持续更新!以下是传送门! YY的《C++》专栏 YY的《C++11》专栏 YY的《Linux》专栏 YY的《数据结构》专栏 YY的《C语言基础》专栏 YY的《

    2024年01月17日
    浏览(58)
  • 【期末不挂科-C++考前速过系列P3】大二C++第3次过程考核(20道选择题&12道判断题&2道代码题)【解析,注释】

    前言 大家好吖,欢迎来到 YY 滴C++考前速过系列 ,热烈欢迎! 本章主要内容面向接触过C++的老铁 主要内容含: 欢迎订阅 YY 滴C++专栏!更多干货持续更新!以下是传送门! YY的《C++》专栏 YY的《C++11》专栏 YY的《Linux》专栏 YY的《数据结构》专栏 YY的《C语言基础》专栏 YY的《

    2024年01月22日
    浏览(62)
  • 2023年下学期《C语言》作业0x02-分支 XTU OJ 1068 1069 1070 1071 1072

    没有换行,不然会格式错误 取模和取余的叠加使用,可以实现取数字最后一位的要求  c语言使用布尔变量需要使用stdbool.h头文件,哪怕输入的是整数,我们定义为双精度变量存储数据其实也是可以的 

    2024年02月07日
    浏览(34)
  • 【期末复习】微信小程序复习大纲

    前言:         这周开始进入期末复习周,没时间看C/C++、linux等知识了,先把期末考试必考的知识捋一遍。 目录 第一章        微信小程序入门 一、填空题 二、判断题 三、选择题 四、简答题 第二章        微信小程序页面制作 一、填空题 二、判断题 三、选择题

    2024年02月04日
    浏览(48)
  • 【期末复习】北京邮电大学《数字内容安全》课程期末复习笔记(2. 信息隐藏与数字水印)

    【相关链接】 【期末复习】北京邮电大学《数字内容安全》课程期末复习笔记(1. 绪论) 【期末复习】北京邮电大学《数字内容安全》课程期末复习笔记(3. 文本安全) 【期末复习】北京邮电大学《数字内容安全》课程期末复习笔记(4. 多媒体安全) 【期末复习】北京邮电

    2024年02月09日
    浏览(44)
  • 移动应用开发期末复习(自用复习勿转)

    主要考察实验中的通知:notification,service。数据库的增删改查操作结合界面的一些操作。 Android是一种基于Linux的软件平台和操作系统,采用了软件堆层(Software Stack)的架构,由下往上分别是Linux内核层、硬件抽象层、系统运行时库层(又称为中间件层)、应用程序框架层和系

    2024年02月05日
    浏览(46)
  • 【机器学习】【期末复习】有关机器学习的计算题可供期末复习参考(带本人手写解答与思考)

    本文为学校课程《机器学习》的期末复习材料,主要是关于一些机器学习模型的计算题的解答过程。 给定一个二维空间的数据集: T={(2,3),(5,4),(9,6),(4,7),(8,1),(7,2)},请构造一个平衡 KD 树。 拓展: k近邻-如何构造平衡kd树? 构建KD树 利用 ID3 与 C4.5 算法构建决策树模型,要求写出

    2024年02月11日
    浏览(41)
  • 云计算复习之Hive数据仓库期末复习整理

    声明:                 1. 本文针对的是一个知识的梳理,自行整理以及方便记忆               2. 若有错误不当之处, 请指出 一、hive的定义与理解 首先,hive是一个构建于hadoop集群之上的数据仓库应用。那么,得先了解一下什么是数据仓库?数据仓库是一个数据集合,用于

    2024年02月04日
    浏览(43)
  • 云计算复习之Spark(Scala版)期末复习整理

    声明:                1. 本文针对的是一个知识的梳理,自行整理以及方便记忆               2. 若有错误不当之处, 请指出 Scala是一种针对JVM 将面向函数和面向对象技术组合在一起的编程语言。Scala编程语言近来抓住了很多开发者的眼球。它看起来像是一种纯粹

    2024年02月03日
    浏览(35)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包