【Django5】练习

基于Django的拼音打字练习系统开发实践 拼音输入法作为中文输入的基础技术,其核心原理是将汉字转换为拼音进行匹配。现代Web开发框架如Django,通过ORM数据管理和模板系统,为构建在线学习工具提供了高效解决方案。在工程实践中,结合jieba分词库实现智能词组匹配,能显著提升打字练习的真实性。这类系统特别适合中文学习者和办公人群,通过WPM(每分钟字数)和准确率等指标量化进步。本文展示的拼音匹配算法和渐进式练习模式设计,既解决了多音字判定的技术难点,又创造了流畅的用户体验。对于需要处理中文文本的开发者,这些优化数据库查询和前端渲染的经验具有普适参 阅读详情

  1. 全新的界面设计 ,将会带来全新的写作体验;
  2. 在创作中心设置你喜爱的代码高亮样式,Markdown 将代码片显示选择的高亮样式 进行展示;
  3. 增加了 图片拖拽 功能,你可以将本地的图片直接拖拽到编辑区域直接展示;
  4. 全新的 KaTeX数学公式 语法;
  5. 增加了支持甘特图的mermaid语法1 功能;
  6. 增加了 多屏幕编辑 Markdown文章功能;
  7. 增加了 焦点写作模式、预览模式、简洁写作模式、左右区域同步滚轮设置 等功能,功能按钮位于编辑区域与预览区域中间;
  8. 增加了 检查列表2 功能。

功能快捷键

撤销:Ctrl/Command + Z
重做:Ctrl/Command + Y
加粗:Ctrl/Command + B
斜体:Ctrl/Command + I
标题:Ctrl/Command + Shift + H
无序列表:Ctrl/Command + Shift + U
有序列表:Ctrl/Command + Shift + O
检查列表:Ctrl/Command + Shift + C
插入代码:Ctrl/Command + Shift + K
插入链接:Ctrl/Command + Shift + L
插入图片:Ctrl/Command + Shift + G
查找:Ctrl/Command + F
替换:Ctrl/Command + G

H2O is是液体。

210 运算结果是 1024.

- 关于 **甘特图** 语法,参考 [这儿][2],

## UML 图表

可以使用UML图表进行渲染。 [Mermaid](https://mermaidjs.github.io/). 例如下面产生的一个序列图:

```mermaid
sequenceDiagram
张三 ->> 李四: 你好!李四, 最近怎么样?
李四-->>王五: 你最近怎么样,王五?
李四--x 张三: 我很好,谢谢!
李四-x 王五: 我很好,谢谢!
Note right of 王五: 李四想了很长时间, 文字太长了<br/>不适合放在一行.

李四-->>张三: 打量着王五...
张三->>王五: 很好... 王五, 你怎么样?

这将产生一个流程图。:

链接
长方形
圆
圆角长方形
菱形
  • 关于 Mermaid 语法,参考 这儿,

FLowchart流程图

我们依旧会支持flowchart的流程图:

Created with Raphaël 2.3.0 开始 我的操作 确认? 结束 yes no
  • 关于 Flowchart流程图 语法,参考 这儿.

Django5

Django基础知识

下载

  • 下载PythonDJango5只支持3.10以上版本,比如下载3.12版本
  • 可以从python官网下载安装,也可以pycharm安装,但是pycharm安装要新建两次项目。(第一次安装python,然后安装Django,第二次才能初始化出来Django文件结构)
  • 安装DJango
pip install django==5.0.3
pip install pymysql
pip install mysqlclient
django-admin startproject projectName
##或者使用pycharm创建:

创建项目

启动Django

python .\manage.py runserver
#或者直接pycharm运行,效果一样

在这里插入图片描述
django结果

  • manage.py:项目交互 python manage.py [子命令/help]
  • settings.py:配置,比如数据库、跨域
  • urls.py:项目所有url
  • wsgi.py:部署项目
  • project和app,一个app一个模块,所有模块放到django项目里面
    • 通过命令python manage.py startapp appName创建app
      创建app

urls

path(route,view,name,kwargs):
route:
- <int:book_id>指定类型为int且views函数里面类型也是一个整形,不是int会出现404,否则默认为str
- str :非空字符串,不能有/
- int:整形,到view视图函数也是整形
- slug匹配_和-或数字英文字符的字符串,/为分割符号;
- path可以不受限制,匹配非空英文字符串,包括/;
- uuid:匹配非空英文字符,包括/
view:返回response函数 ,可以是视图函数、类视图.as_view()、django.urls.include()(include("movie.urls"))函数返回值
name:url取名字,项目大、url多的时候用,可以反向得到路由,一定要写app_name

  • /book/2
# /项目名/项目名/urls.py
path("book/<book_id>",views.book_detail_path)
#项目名/book模块/views
def book_detail_path(request,book_id):
    return HttpResponse(f"id为{book_id}")#id为2
  • /book?id=2&name=活着
# /项目名/项目名/urls.py
 path("book",views.book_detail_query_string),
#项目名/book模块/views
def book_detail_query_string(request):
    book_id=request.GET.get('id') #找不到id不会抛异常['id']会
    name=request.GET.get('name')
    return HttpResponse(f"id为{book_id},名称为{name}") #id为2,名称为活着
  • 结合:/book/str/12
# /项目名/项目名/urls.py
  path("book/str/<str:book_id>",views.book_str)
#项目名/book模块/views
def book_str(request,book_id):
    return HttpResponse(f"id为{book_id}") #id为12
  • slug:/book/slug/12-1
# /项目名/项目名/urls.py
  path("book/slug/<str:book_id>",views.book_slug),
#项目名/book模块/views
def book_slug(request,book_id):
    return HttpResponse(f"id为{book_id}") #id为12-1
  • path:/book/str/12/1
# /项目名/项目名/urls.py
   path("book/path/<path:book_id>",views.book_path)
#项目名/book模块/views
def book_path(request,book_id):
    return HttpResponse(f"id为{book_id}") #id为12/1
  • path:/movie/detail/12
# /项目名/项目名/urls.py
   path("movie/",include("movie.urls")),
#movie.urls:
from django.urls import path
from . import views
app_name='movie'
urlpatterns=[
    path("list",views.movie_list,name="movie_list"),
    path("detail/<int:movie_id>",views.movie_detail,name="movie_detail"),
]
#movie/views.py
from django.shortcuts import render
from django.http import HttpResponse
from django.template.context_processors import request

def movie_list(request):
    return HttpResponse("电影列表") #电影列表
def movie_detail(request,movie_id):
    return HttpResponse(f"获得的电影id:{movie_id}") #获得的电影id:12
  • 反转,通过name获取地址
    • <name>通过kwargs;
    • request.GET.get通过手动添加;
    • app下的使用appname:name
#任一个views.py
from django.urls import reverse
def index(request):
    print(reverse("index"))# /
    print(reverse("book_detail_path",kwargs={"book_id":1}))# /book/1
    print(reverse("book_detail_query_string")+"?id=1&name=活着") # /book?id=1&name=活着
    print(reverse("book_path",kwargs={"book_id":1}))    # /book/path/1
    print(reverse("movie:movie_list")) #/movie/list
    print(reverse("movie:movie_detail",kwargs={"movie_id":1})) #/movie/detail/1
    return HttpResponse("Hello world")

DTL

一种带有特殊语法的HTML文件,可以被Django编译、传递参数进去,实现数据动态化。编译完成后生成HTML,然后发送到客户端
渲染模板:

  1. html=render_to_string(detail.html)然后return HttpResponse(html)
  2. 直接render:return render(request,'detail.html'),一步到位。
#
# 任一个views.py
from django.shortcuts import render

# Create your views here.
def index(request):
    return render(request,"index.html") #html都在templates里面
  • setting.py

    • BACKEND:templates引擎
    • DIRS:templates,存放模板的路径
    • APP_DIRS:是否允许从app里面找templates/index.html,并且要求INSTALLED_APPS里面添加app
  • 传参

    • json,类和数组都用.多层用多个点
    • 使用context传参
#任一baidu.html
<p>{{username}}</p>
<p>{{ book.name }}</p>
<p>{{ book.id }}</p>
<p>{{qas.0}}</p>
<p>{{qas.1}}</p>
<p>{{qas.2}}</p>
<p>{{qas.2.问题3}}</p>
<p>{{person.name}}</p>
<p>{{person.age}}</p>
# 任一views.py
username = "baidu"
    username = "baidu"
    book={'name':'活着','id':'1'}
    class Person:
        def __init__(self,name,age):
            self.name=name
            self.age=age
    qas=[
        {"问题1":"你是谁"},
        {"问题2":"你要到何处去"},
        {"问题3":"你从何处来"},
    ]
    context={"username":username,"qas":qas,"book":book,"person":Person("张三",19)}
    return render(request,"baidu.html",context=context)
表达式
名称功能
ifif a in b ;elif c==d;else e;endif
forif a in b [reversed];a.c;endfor ;
字典for用items/keys/values都可以;
reversed反向遍历;
{{forloop.counter}}获取索引
counter0从0开始
counter从1开始
revcounter反向到1
revcounter0反向到0
first是否第一个
last是否最后一个
parentloop用上一级的for
emptyfor的东西为空,执行{%empty%}hello
with定义变量{%with a=b%} {{a}} {% endwith %}
url{%url ‘app:视图名’%} 或者{%url ‘index’ %} 根据视图名字反转出url,有参数直接后面传参,字符串需要拼接
#if
{% if "hello" in persons %}
	hello
	
{%else%}
	world
{% endif %}`
#for
<table border="1" align="center">
        <tr align="center">
            <th><p>序列号</p></th>
            <th><p>游戏名称</p></th>
            <th><p>游戏类型</p></th>
        </tr>
{%  for game in games %}
    <tr align="center" >
        <td>{{forloop.counter}}</td>
        <td><p>{{ game.name }}</p></td>
        <td><p>{{ game.type }}</p></td>
    </tr>
    {%empty%}
        <tr align="center" ><p>没有</p></tr>
{%endfor%}
</table>
#url
#/
<a href="{% url 'index' %}">首页</a> #直接视图名
#/home/baidu
<a href="{% url 'home:baidu' %}">百度一下,你就知道</a> #app内用app:视图名
#/book/1
<a href="{% url 'book_detail_path' 1 %}">图书详情</a> #有参数在后面传参
#/book/1
<a href="{% url 'book_detail_path' book_id=1 %}">图书详情</a> #多个参数指定名称
#/book?id=1&name=活着
<a href="{% url 'book_detail_query_string'%}?id=1&name=活着">图书详情</a> #查询字符串需要手动拼接
过滤器

{{value | add:"2"}},参数为:"参数",过滤器为aadd,用|分割

名称功能
add添加参数到value
cut指定字符清除,相当于replace(args,“”)
datedatetime.now() ->date->年/月/日;
Y4位年,m2位月,n可1位月,d两位天,j可1位天
g可1位12时,h2位12时,G可1位24时,H2位24时,i2位分钟,s2位秒
可1位代表1-9没有0前缀
default设置空值/False的默认值
default_if_none设置空值none的默认值
first / last显示列表/元组的第一个元素 / 最后一个元素
floatformat格式化浮点数类型只保留一位小数,小数点后面都是0,保留整数
join将数组或元组根据参数拼接,相当于"/".join(data)
length数组或元组或字典的长度
lower / upper字符全部小写 /大写
random列表/字符串/元组随机选择一个值
safe标记字符串安全,自动解析html
slice切片,相当于python的切片data[1:]
striptags删除html标签
truncatechars超过长度进行切割,切割+拼接三个点作为省略号,…也算3个字符
truncatechars_htmlhtml字符串不切割标签
#cut
{{value| cut:" "}}
#date
 {{value|date:"Y/m/d"}} 
#default
{{value | default:"暂时没有写"}}
#default_if_none
{{value | default_if_none:"暂时没有写,是None"}}
#safe
{{ html | safe }}
#slice
{{ list | slice:"1:"}}
include

include将一些复用模板放到(include)到其他地方
比如header.html里面的内容可以只包含div,和vue的组件一样
传递参数给主模板就可以,子模版直接使用主模板变量
传递参数也可以用with

#将header.html和footer.html放到其他界面
{% include 'header.html' %}
{% include 'footer.html' %}
#传递参数用`with`语句
{% include 'header.html' with username='张三' %}
block

用于填位置

#base.html,有header,body,footer,相当于vue的views/index.vue
<head>
    <meta charset="UTF-8">
    <title>{% block title %}{% endblock %}</title>
    {% block head %}{% endblock %}
</head>
{% block body %}我是base.html的body block{% endblock %}#当有html用extends继承base的时候,可以使用body标签填充这个位置
extends

用于继承,必须放到第一行

#index.html
{% extends 'base.html' %} #继承base.html
{%block title%} #填充base.html的title block
    首页
{%endblock%}
{% block head %}
    <style>
    body{
        background-color: #31a89f;
    }
    </style>
{% endblock %}

{%block body%} #填充base.html的body block
{{ block.super }} #可以继承父的block内容
    hello
    {% include "hotarticle.html" %}
{%endblock%}
{%%}


  1. mermaid语法说明 ↩︎

  2. 检查列表 ↩︎

python django拼音打字练习 这是一个基于 Django 开发的拼音打字练习系统,专为学习汉语拼音的用户设计,特别适合儿童通过平板设备进行拼音练习。系统提供了多种练习模式,包括标准练习、无尽模式和专门为平板设备优化的平板模式。使用 pypinyin 库将中文字符转换为拼音,支持无声调模式,只处理汉字字符,忽略标点符号和其他特殊字符。使用 Django 的会话机制存储用户的练习状态、正确拼音和统计数据,确保练习过程的连续性。- 词句库管理 :点击 "词句库管理" 进入管理页面,添加或删除练习词句。 阅读详情

相关推荐

Python100道经典练习题

关于Python的经典的习题,方便初学者做python知识复习。

Django编程练习——10道

Django项目中实现的一些简单方法

weixin_50517509的博客 817

Django练习题.zip

Django的一些小型的项目题型,需要实现的 技术有基本ORM思想,对数据库的增删改查,图片的上传,Django的高级操作,Django实现的发送邮件。

Django小练习(1)-基础篇

1.安装Django 下载 Django 压缩包,解压并和Python安装目录放在同一个根目录,进入 Django 目录,执行python setup.py install,然后开始安装,Django将要被安装到Python的Lib下site-packages。 Django 下载地址:https://www.djangoproject.com/download/ Django与Pytho...

与君共勉 903

python程序设计习题及答案.doc

只是看书而不知练习用Python来解决一些有意义的问题,那么在学习Python的道路上算是快到头了。 在该文档中,有很多经典的Python程序设计习题,希望可以帮到你。

Django ORM 练习题及答案

主要介绍了Django ORM 练习题及答案,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

【专题】Django期末练习题

NIIT的Django期末复习资料

Pqf18064375973的博客 1040

开源光标主题实战:从Moshi Monsters到自定义指针的完整指南

光标主题是操作系统个性化的重要组成部分,它通过替换系统默认指针图标来改变视觉交互体验。其原理在于操作系统允许用户自定义指针资源文件,这些文件定义了不同状态下的光标图像。从技术价值看,一套设计良好的光标主题不仅能提升桌面美观度,还能增强用户的情感连接和操作愉悦感,是低成本高回报的数字幸福感提升方案。在应用场景上,无论是开发者、设计师还是普通用户,都可以通过更换光标主题来个性化工作环境。本文以热门的Moshi Monsters开源光标项目为例,深入解析了光标主题的设计逻辑、系统适配方案以及二次创作方法,涵盖了W

weixin_30879833的博客 569

django33 orm框架的大量练习题

商品名称,使用 CharField 存储字符串,最大长度为 200 个字符# 商品描述,使用 TextField 存储较长的文本信息# 商品价格,使用 DecimalField 存储十进制数字,最大位数为 10,小数位数为 2# 商品库存数量,使用 IntegerField 存储整数# 商品添加日期,使用 DateTimeField 存储日期和时间,auto_now_add=True 表示在创建对象时自动设置为当前时间。

未来已来,AI时代,学AI编程,做AI量化,就来大鹏AI教育。 887

避坑实录:用certificate-manager重置vCenter 6.7证书时遇到的三个致命陷阱

本文详细解析了使用certificate-manager重置vCenter 6.7证书时可能遇到的三大致命陷阱,包括进度卡在85%的服务启动僵局、脚本突然退出的静默杀手以及密码错误锁死的隐藏机制。通过实战验证的解决方案和高级恢复技巧,帮助系统管理员有效避免vCenter环境瘫痪,确保证书更新过程顺利进行。

g5h6i7j的博客 919

群晖NAS从入门到精通的所有帖子汇总,只要这一篇就够了

本站陆陆续续的转载、原创帖子也有十几二十篇了,从不同的角度对群晖NAS的各种骚操作都有深入的讲解,虽然很多文章都不是讲的很深入,但是针对小白入门已经是足够了,希望对小白来说是一个入门,群晖NAS的大佬们勿喷,哪里写的不对的,请随时留言西安SEO优化站长一定在第一时间纠正修改。

西安SEO优化网站资源 8万+

django练习

一、单选题(共10题,每题2分) 得分:0.0分 1.下面那个不是路由映射的组成部分 A名称 B视图函数的路径 C视图函数的调用 D匹配模式 正确答案: C 解析: 路由是一个映射,由匹配模式、视图函数路径、名称组成 得分:2.0分 2.可以严格匹配请求路径/user/21/(21是整型参数)是() Ar’/user/(\d+)/’ Br’^/user/(\d+)$ Cr’^user/(\d+)/...

qq_42527108的博客 1814

使用Avalonia跨Linux平台

Avalonia类似使用WPF的技术方法来开发,所以,需要会使用WPF,其中的一些语法和写法与WPF有所区别,但是他们相差不大,会WPF的话,基本上可以看看文档后,完全掌握Avalonia的使用,从而达到跨平台开发的任务。其实写法有些不一样,可以参考官网的说明,进行修改。2. 安装完成后,重启VS2022,我们可以看到1和2,其中1是使用MVVM模式开发,2是普通模式开发,我们选择2,建立项目。9.直接双击粉红色的文件,进行安装,输入密码,但是美中不足的是,好像没有图标,图标似乎需要单独去设置。

故里2130 1万+

Django 5 增删改查 小练习

Django 5 增删改查 小练习 ai 用豆包 或kimi 再修改自己喜欢,django 生成小过程 vscode插件用CodeGeeX 少写很多代码,空格和Tab键用多了,一键生成代码 待续

PieroPc的博客 885

CARLA仿真:自定义地图与AI车辆行为编程

CARLA仿真:自定义地图与AI车辆行为编程 ,人工智能,计算机视觉,大模型,AI,本文围绕CARLA仿真平台,介绍了其基础功能与安装方法,详解地图系统,包括预设地图的加载切换及自定义地图的创建、导入与优化。还阐述了AI车辆的创建、属性设置、销毁,以及行为控制,如交通规则遵守、路径规划、复杂行为编程和行为树应用。同时涉及传感器与车辆感知、交通场景构建、自定义地图与AI行为结合应用、高级应用,以及常见问题解决方案和学习资源,为CARLA仿真应用提供全面指导。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 11万+

小红书直播弹幕采集

本文主要介绍小红书直播间弹幕的采集,便于进行直播数据监控与直播数据进行分析。

tdl320721的博客 2542

Django 之 练习5: ModelForm

Modelform 生成页面时, 是严格按照 Model 中注册的类型

yang_kaiyue的博客 186

实战篇(七):使用Processing和PixelFlow库创建交互式流体太极动画

类:用于配置流体运动的参数,比如圆的位置、半径、运动的角度和速度以及颜色等。类:实现了接口,用于更新流体物理仿真的状态,同时整合声音输入作为流体动态变化的一部分。my_update方法:是流体物理仿真更新的核心,它计算流体粒子的速度和位置,并且将这些数据传递给流体库来模拟流动。现在,让我们进一步分析并解释每个部分的作用以及如何操作。float x;// 圆心位置xfloat y;// 圆心位置y// 半径// 是否是顺时针// 圆周运动,弧上的点位置,以及上一帧的点位置// 角度。

帅小柏的博客 1635

Django5—数据库的练习

ORMl练习 模型 假设有以下ORM模型: from django.db import models class Student(models.Model): """学生表""" name = models.CharField(max_length=100) gender = models.SmallIntegerField() class Meta: db_table = 'student' class Course(models.Model):

qq_36581961的博客 199

TC3XX - MCAL知识点(十三):IOM EB-tresos配置说明及代码浅析

输入输出监视器(IOM)驱动程序作为比较单元,检查系统外设输出的正确操作,这些输出可以作为监视功能的输入。监控功能需要通过配置IOM硬件来实现。它向SMU生成全局系统事件。IOM驱动程序初始化并控制微控制器的IOM单元。驱动程序还为用户提供初始化和设置IOM内部单元的阈值的服务。它还应该提供重置IOM内核的服务。应该提供该服务来组合单个或多个本地事件,以生成单个全局系统事件。IOM驱动程序严重依赖于初始化和配置。软硬件关系如下图缩写解释LAM逻辑分析模块ECM事件组合模块FPC。

梦想技术家 1802

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

python3.5+django2.0的练习项目——简易个人博客

先是开始的一点废话 话说上个月开始就一直在学习django。 django是python的一个非常著名的web框架,貌似知乎和豆瓣就是用django写的。不过虽然很多人都在学习、使用的人很多,django2.0的文档还并不是丰富,特别是中文教程(因为django2.0是必须使用python3.5+的,所以可想而知很多教程文档都是基于python2.7+django1.x写的)。唯一找到的关于p...

NA_keshu的博客 3313

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

Django小练习(5)-创建新闻博客实例

1.创建项目 minicms 和 应用 news,在命令行窗口输入以下命令 django-admin.pystartprojectminicms cdminicms pythonmanage.pystartappnews 2.创建模型models.py,设计Column,Article,Account表结构 栏目:栏目名称,网址,简介,是否导航显示,是否首页显示 文章:归属栏...

与君共勉 628

TMS_WebGMaps_1.9.8.0_Full_Source

TMS_WebGMaps_1.9.8.0_Full_Source 全源码 delphi cbuilder

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

基于Django的儿童拼音打字练习系统开发实践

拼音打字练习系统是结合教育需求与计算机技术的典型应用,其核心原理是通过汉字转拼音引擎实现文字输入训练。在技术实现上,采用Django框架构建后端服务,利用其ORM系统高效管理词库数据,同时通过原生JS开发轻量级前端,确保在低配设备上的流畅运行。这类系统在教育领域具有重要价值,尤其适合5-12岁儿童的汉语学习场景。项目中特别注重儿童认知特点,设计了降低认知负荷的交互界面和即时反馈机制。关键技术选型包括pypinyin库的多音字处理和SQLite的轻量级部署方案,这些设计使得系统在树莓派等低功耗设备上也能稳定运

weixin_42116058的博客 251

django练习题

django练习题 1、Web框架的本质是什么?为什么要有Web框架? 所有的Web应用,本质上其实就是一个socket服务端,用户端程序其实就是一个socket客户端。对于真实开发中的python web程序来说,一般会分为两部分:服务器程序和应用程序。服务器程序负责对socket服务器进行封装,并在请求到来时,对请求的各种数据进行整理。应用程序则负责具体的逻辑处理。为了方便应用程序的开发,就出...

QQ群166477105Python技术群 1777

django扩展练习记录

可以方便地管理周期性任务(如每天清理缓存、定时发送邮件等)执行后,mysql中,多了两个django_apscheduler开头的表。可以是一个utils包下,创建一个叫task.py的,也有人也在view.py中, 还有人习惯专门改个app来实现定时任务。hex6]方式了,在方法上写装饰器@register_job(scheduler,‘interval’,seconds=20,id=‘clenauo_job2’),就不用下方的 scheduler.add_job()部分了。

Ataoker的博客 1702

django-bootstrap-v5:为Django项目引入Bootstrap 5的强大功能

django-bootstrap-v5:为Django项目引入Bootstrap 5的强大功能 项目介绍 在现代Web开发中,前端框架的重要性不言而喻。Bootstrap作为最受欢迎的前端框架之一,其最新版本Bootstrap 5带来了许多令人兴奋的新特性和改进。django-bootstrap-v5项目旨在将Bootstrap 5的无缝集成带入Django框架,使得Django开发者能够更加轻松...

gitblog_00457的博客 1167
上一篇: 阿里云 ACP -大数据认证学习-MaxCompute
下一篇: 第3章栈和队列
厨 神
博客等级 码龄8年 263粉丝 78原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

厨 神

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值