- 博客(58)
- 收藏
- 关注
原创 Django开发:视图与路由实战指南
本文介绍了Django框架中路由与视图的基本使用方法和相关特性。主要内容包括: 路由与视图的基本配置:通过urls.py文件定义URL映射到视图函数,在views.py中编写处理请求并返回响应的视图函数。 name属性的使用:为路由指定name属性可以方便后续维护,结合reverse()实现动态路由跳转,避免硬编码URL路径。当存在命名冲突时,可以使用namespace进行区分。 路由参数的获取:包括位置参数的获取方式,以及通过request.GET获取查询字符串参数,支持处理一键多值的情况。 POST请求
2026-05-31 15:19:07
223
原创 Django开发:基本入门指南
Django框架摘要: Django是一个基于Python的高性能开源Web框架,采用MTV设计模式,提供全栈解决方案。核心特点包括快速开发、高安全性(防范SQL注入/XSS/CSRF等)、可扩展性和自动化工具(Admin后台/数据库迁移)。主要组件涵盖模型(ORM)、视图(业务逻辑)、模板(动态HTML)和路由(URL映射)。 项目搭建通过django-admin创建,使用manage.py运行服务。静态文件通过STATIC_URL配置,模板中通过{% static %}标签引用。中间件机制允许无侵入式干
2026-05-24 19:30:02
369
原创 Django开发:数据库操作全指南
本文介绍了Django框架中数据库操作的核心概念与开发流程。主要内容包括:1)Django模型的定义方式,通过继承models.Model类创建数据表结构,详细列举了常用字段类型和外键约束选项;2)数据库开发的基本步骤,从模型定义到迁移文件生成与执行;3)管理员账户创建与后台管理界面配置;4)数据库切换配置方法,支持从SQLite迁移到MySQL等数据库;5)数据库操作方式,包括通过shell命令行和视图代码两种途径进行数据查询与管理。文章为开发者提供了Django数据库开发的完整指导,涵盖从基础概念到实际
2026-05-17 21:35:13
472
原创 Vue开发必备:从入门到实战指南
前端开发相关文档链接插值表达式1.2 构造函数的选项对象选项参数说明el提供一个在页面上已存在的DOM元素作为Vue实例的挂载目标data实例的。将会递归将data的属性转换为getter/setter,从而让data的属性能够响应数据变化methodsVue实例的,可以在Vue直接调用或将方法绑定到DOM元素的事件上computedVue实例的计算属性集合watch观察Vue实例变化的一个表达式或计算属性函数components包含Vue
2026-04-26 20:52:29
405
原创 Node.js开发指南:模块、npm与Webpack
Node.js是一个跨平台JavaScript运行环境,用于构建服务器端应用。文章介绍了Node.js的核心功能:自定义模块的导出导入(支持CommonJS和ES标准)、内置模块(fs、path、http)的使用方法。详细讲解了npm包管理工具,包括初始化项目、安装依赖和版本控制。推荐使用nodemon实现开发时自动重启功能,提升调试效率。最后简要介绍了Webpack打包工具,涵盖其核心概念、配置方法和基本打包流程,帮助开发者实现前端资源的模块化管理与优化。全文提供了Node.js生态系统的实用开发指南。
2026-03-24 21:50:09
418
原创 Ajax与Axios:现代前端异步请求指南
AJAX与Axios技术解析 AJAX是一种异步网页交互技术,通过XMLHttpRequest对象实现局部页面更新,支持GET/POST等多种请求方法,能够处理XML、JSON等多种数据格式。其核心优势在于异步通信和局部刷新,显著提升用户体验。 Promise对象为异步操作提供了更优雅的解决方案,通过状态管理和链式调用避免回调地狱。Promise.all可实现多个异步请求的并行处理。 Axios是基于Promise的HTTP客户端,兼容浏览器和Node.js环境,提供请求拦截、自动JSON转换等高级功能。相
2026-03-22 19:31:44
622
原创 JavaScript Web API:DOM操作全解析
本文介绍了JavaScript Web API的核心概念与应用。首先概述了Web API作为浏览器提供的功能扩展接口,涵盖DOM操作、多媒体处理等功能。重点讲解了JS单线程执行机制及同步/异步任务处理流程,通过事件循环实现非阻塞运行。详细阐述了DOM操作,包括元素获取、内容修改、属性操作和样式控制,以及表单元素和自定义属性的处理。最后简要介绍了节点操作的基本方法。这些API为动态网页开发提供了基础能力支持。
2026-03-17 22:49:24
453
原创 JavaScript入门指南:从零到精通
JavaScript是一种轻量级、解释型编程语言,主要用于为网页添加交互功能。作为Web开发的三大核心技术之一,它支持跨平台运行、动态类型、事件驱动和异步编程等特性,广泛应用于前端开发、后端开发(Node.js)、移动应用(React Native)和游戏开发等领域。JavaScript可通过内部脚本、外部引入和行内三种方式嵌入HTML,提供alert、console.log等输出语法和prompt输入语法。变量声明推荐使用let和const,支持number、string、boolean等多种数据类型,并
2026-03-15 15:16:23
496
原创 Docker入门:快速安装与实战指南
本文介绍了Docker的快速入门和基础操作指南。主要内容包括:1)Docker安装步骤(CentOS系统)及镜像加速配置;2)MySQL和Nginx容器部署方法;3)常用Docker命令汇总(镜像/容器操作);4)数据卷的使用与本地目录挂载实践;5)自定义镜像构建原理。文章通过具体案例演示了容器部署、数据管理、目录映射等核心功能,并提供了阿里云镜像加速、MySQL配置挂载等实用技巧,帮助用户快速掌握Docker的基本使用方法。
2026-02-04 20:31:16
700
原创 Kubernetes访问控制全解析:认证与授权实战(K8s)
本文介绍了Kubernetes的访问控制机制,主要包括认证管理和授权管理两部分。认证管理部分详细说明了三种客户端身份认证方式:HTTPBase认证、HTTPToken认证和HTTPS证书认证,重点阐述了HTTPS双向认证流程。授权管理部分重点讲解了RBAC(基于角色的访问控制)机制,包括Role/ClusterRole定义权限集合、RoleBinding/ClusterRoleBinding将角色绑定到用户或服务账号的过程,并通过YAML示例展示了具体配置方法。文章还介绍了RoleBinding引用Clus
2026-02-02 22:21:19
957
原创 Kubernetes持久化存储:PV与PVC实战解析(K8s)
Kubernetes通过Volume实现容器数据的持久化存储,支持多种存储类型。EmptyDir是临时存储,随Pod销毁而删除;HostPath将数据持久化到Node主机目录;NFS则通过网络存储实现跨节点数据共享。高级存储使用PV(管理员维护的存储资源)和PVC(用户申请的存储需求)抽象底层存储细节,实现资源隔离。PV定义存储容量、访问模式等属性,PVC向系统申请所需存储资源。这种分层设计将存储管理职责细分,存储工程师维护底层存储,管理员配置PV,用户通过PVC声明存储需求,提高了系统的灵活性和可维护性。
2026-01-29 22:05:13
877
原创 Kubernetes流量负载:Service与Ingress全解析(K8s)
pod是应用程序的载体,我们可以通过pod的ip来访问应用程序,但是pod的ip地址不是固定的,这也就意味着不方便直接采用pod的ip对服务进行访问。Service:对提供同一个服务的多个pod进行聚合,并且提供一个统一的入口地址。通过访问Service的入口地址就能访问到后面的pod服务。每个Node节点上都运行着一个kube-proxy服务进程。
2026-01-27 22:00:24
779
原创 Kubernetes Pod控制器深度解析(K8s)
摘要: Kubernetes中的Pod创建方式分为自主式Pod和控制器创建的Pod。Pod控制器是管理Pod的中间层,常见类型包括ReplicaSet(保证Pod正常运行)、Deployment(管理ReplicaSet,支持滚动升级)、DaemonSet(节点守护进程)、Job(一次性任务)等。ReplicaSet通过标签选择器管理Pod,确保指定数量的Pod运行,支持扩缩容和镜像升级。Deployment则间接管理Pod,提供更强大的功能如版本回退和滚动更新。两者均通过YAML文件定义,使用kubect
2026-01-24 17:10:52
656
原创 Kubernetes Pod核心配置详解(K8s)
摘要: Pod是Kubernetes中最小的部署单元,包含一个或多个容器。每个Pod都有一个根容器(Pause)用于健康评估和网络设置,其他容器共享其IP实现内部通信。Pod通过YAML文件定义,主要配置包括容器镜像、拉取策略、启动命令、端口暴露、资源限制等。镜像拉取策略分为Always、IfNotPresent和Never三种。示例展示了包含nginx和busybox容器的Pod配置,其中busybox因缺少启动命令导致运行失败。可通过kubectl命令查看Pod详细状态和配置选项。
2026-01-20 22:30:51
705
原创 Kubernetes集群搭建与核心功能全解析(K8s)
Kubernetes 简介Kubernetes(简称 K8s)是一个开源的容器编排平台,用于自动化部署、扩展和管理容器化应用。k8s本质是一组服务器集群,他可以在集群的每个集群的节点上运行特定的程序,来对节点职工的容器进行管理,现已成为容器编排领域的事实标准。Kubernetes 核心功能自动化容器部署:根据配置自动调度容器到集群中的节点,确保应用按预期运行。弹性扩缩容:支持手动或基于资源使用情况自动调整应用实例数量。服务发现与负载均衡:为容器组(Pod)分配唯一 IP 和 DNS 名称,并实现流量分发。
2026-01-18 13:25:32
655
原创 CSS常用属性速查手册
本文总结了CSS常用属性和基础语法。主要内容包括:1)字体和背景属性,如font-size、color、background等;2)盒子模型和布局相关属性,如display、padding、float、flex布局等;3)表单、字体图标和其他实用属性。CSS作为层叠样式表语言,用于美化HTML文档,基本语法为选择器{属性:值}。文章详细分类整理了各类CSS属性及其用法,包括文字样式、背景设置、盒子模型、浮动定位、弹性布局等核心内容,并提供了属性说明和示例代码,是CSS学习的实用参考手册。
2025-12-28 20:50:26
1175
原创 HTML常用标签速查手册
本文介绍了HTML的基本结构和常用标签,包括文本格式化标签(h1-h6、p、strong等)、多媒体标签(img、audio、video)和列表标签(ul、ol、dl)。重点讲解了表格标签的使用方法,包括基本表格结构(table、tr、td/th)、表格边框设置和合并单元格技巧(rowspan/colspan)。还介绍了表格结构标签thead、tbody、tfoot的用法,帮助开发者创建更规范的表格布局。通过示例代码展示了各类标签的实际应用,可作为HTML入门的快速参考指南。
2025-12-21 21:26:02
726
原创 PyQt常用控件使用介绍:QTreeWidget树结构
本文介绍了PyQt中QTreeWidget控件的使用方法和常用功能。主要内容包括:1) QTreeWidget的基本介绍和初始化方法,包括设置列数、标题、节点添加等;2) 常用函数分类说明,涵盖节点操作、信息获取、显示控制等功能;3) 事件绑定方法,如单击/双击、勾选状态变化、右键菜单等事件的响应处理。文章通过代码示例详细展示了如何创建树形结构、递归遍历节点以及处理各类交互事件,为开发树形界面提供了实用参考。
2025-11-24 00:14:18
286
原创 网络编程底层通信(socket)
socket(套接字)是网络通信的端点,是应用层与传输层之间的接口。它允许不同主机或同一主机的不同进程之间进行通信:参数见下表proto(通常省略):协议号,通常为0,表示使用默认协议 socket.IPPROTO_TCP:6 socket.IPPROTO_UDP:17 socket.IPPROTO_ICMP :1fileno:文件描述符,可选参数,如果指定,将从指定的文件描述符创建一个套接字对象通常使用如下简洁方法创建TCP/IPUDP/IPfamily参数描述常见用途。
2025-07-06 20:33:07
1341
原创 PyQt常用控件的使用:QFileDialog、QMessageBox、QRadioButton等
文章主要介绍PyQt中一些常用控件的常规用法
2025-06-06 22:33:47
1322
原创 python文件类操作:json/ini配置文件、logging日志统计、excel表格数据读写、os操作库
该文章主要介绍各种文件的读写操作,主要包括json配置文件、ini配置文件、logging日志模块、表格数据操作、os操作等
2025-04-19 18:10:55
1201
原创 PyQt 界面设置与布局:菜单栏、工具栏、主体、提示栏布局
PyQt 提供了丰富的布局管理器和美化操作,可以帮助开发者轻松创建复杂的用户界面。通过合理使用布局管理器、拉伸因子、对齐方式、间距设置等功能,可以设计出美观且功能强大的应用程序界面。
2025-02-23 22:14:39
2066
原创 PyQt 界面编程:QDialog、QWidget、QMainWindow 的面向过程与面向对象编程
PyQt 是一个用于创建图形用户界面(GUI)的 Python 库,它将 Qt 应用程序框架与 Python 语言结合。Qt 是一个功能强大的跨平台 C++ 库,广泛用于开发桌面、移动和嵌入式应用程序。PyQt 允许开发者利用 Qt 的强大功能,同时使用 Python 的简洁语法
2025-02-16 18:09:15
1401
原创 python数据类型:元组、列表、字典、集合、数组、队列等
字典使用散列表实现的,散列表是一个稀疏数组(存在空白元素的数组),字典的每个键值对占用一个表元,每个表元有两部分,分别是对键值的引用和对值的引用,所有表元大小一致,可以通过偏移量来读取表元,Python会设法保证大概1/3的表元是空的,在快要达到阈值的时候,原有的散列表会被复制到一个更大的空间。set实现也依赖散列表,集合的元素必须是可散列的,集合很消耗内存,可以很高效的判断元素是否存在于某个集合中,元素的次序取决于被添加到集合里的次序,往集合里添加元素可能会改变集合里已有元素的次序。
2024-12-07 19:21:08
990
原创 python生成器与迭代器
迭代器用于从集合中取出元素,生成器用于凭空生成元素;iter()方法可以获取一个迭代器(_iter__或如果实现了__iter__方法,对象就是可迭代的;使用iter(a)可判断a是否可迭代,不可迭代会报错(或isinstance(a, abc.iterable) (from collections import abc));可迭代对象与迭代器关系:Python从可迭代的对象中获取迭代器。
2024-10-15 19:27:56
1634
1
原创 python类与魔法方法
一般设计类的时候,如果有类方法,这个类一般不会实例化对象,直接使用类对象来操作(如:数学函数类),一般用来定义工具类的使用。:子类提供init方法后,子类实例化对象时,就会调用子类自己的init初始化方法,就不会调用父类的init方法,这时没有父类的属性(这里继承了name属性,没有继承num/__age属性)(private):属性前面加了双下划线,则为私有属性,该属性只能可以在类内获取与修改,在类外不能读取与修改,要在类外使用,只能通过类的公有方法调用。
2024-10-15 19:27:19
1433
原创 python的函数、装饰器、闭包
函数的各个参数可以在:之后添加注释表达式,如果参数有默认值,注释放在参数名和=之间,如果想注释返回值,在)和函数声明末尾的:之间添加->和表达式。:上面的不通用,如果有参数的时候就会出错。因为装饰器在装饰函数时,需要根据被装饰的函数定义的格式来适当的接收参数和返回值所以闭包函数中的内函数也要相应的接收数据和返回数据,通用方式可以任意个参数。由于闭包引用了外部函数的变量,则外部函数的变量没有及时释放,消耗内存。:第一个参数为函数名,第二个为函数的参数,该函数返回每次function函数返回值的新列表。
2024-10-12 21:24:27
1114
1
原创 Python字符串格式
将ASCII码转化为数字或者将数字转化为ASCII码时,可以使用。出去上面的,整数使用的有bcdxXn,浮点数有eEfFgGn%除上面方法之外,将数字转化为ASCII码,还可以使用。在一些以前的python版本不支持。该部分输出格式都是使用。
2024-10-12 19:49:38
1529
原创 shell编程基础:分支、循环、函数、grep、sed、awk等
shell脚本类似于windows下的批处理文件,是将linux下的多条指令写成文本的形式,赋予执行权限,当执行该脚本文件的时候,就相当于执行了该文本内的所有语句
2024-01-01 17:19:29
1097
原创 Python异常处理
下面自己自定义一个判断手机号位数是够合法的异常类,如果不合法,则抛出异常# 自定义异常类# 定义一个用来判断手机号位数是否合法的异常类# 抛出异常pn = input('请输入手机号')# 抛出异常raise PhoneNumberNotDigitError('手机号不合法')= 11:raise PhoneNumberLengthError('手机号位数不对')print('输入的手机号合法')# 捕获异常try:print(e)else:print(num)
2023-10-30 21:38:24
382
原创 django框架——实现MySQL数据库数据的删除
在html中的删除按钮中绑定js文件中的事件,带上参数,点击即触发(删除按钮不能是a链接,不然报错)js文件中实现该功能,发起ajax请求到后端视图中对数据库进行操作。在视图里面实现删除功能。
2023-07-05 23:32:18
700
原创 Django框架
在主项目的中配置在子应用的models.py中定义模型运行会生成数据库和在子应用的views.py中设置在子应用中创建urls.py路由文件urlpatterns = [ # 参照:正则;函数 path('index/' , index) , ]在主应用的urls.py中添加引入该路由urlpatterns = [ # 参照:正则;函数 path('admin/' , admin . site . urls) , # 添加一项 path('' , include('login.urls')) ]
2023-05-21 17:17:33
1720
原创 git源代码管理
然后在虚拟机里面执行如下指令,将github的代码下载到本地:git clone git@github.com:EnJoyABoy/python.git。:比如有两个分支,一个主分支,一个副分支,我们在副分支中提交修改代码,当编写的差不多了,可以将副分支的提交提交到主分支当中,从而不影响主分支的使用。执行commit之后,执行指令git status会提示在某分支有一笔提交,这时,本地的代码修改了,但是github中的没有被修改。
2023-05-21 17:16:54
935
原创 Vue.js
文章目录Vue(前端框架)data基本语法v-bind(属性)v-if(条件)v-formethods事件v-model表单绑定todolist(添加删除展示内容,含上下移动)es6语法生命周期函数axios发送ajax请求v-on事件 常见的事件: click: 点击一次; 当鼠标点击,触发事件 dblclick: 双击;当鼠标双击,触发事件 focus: 获取焦点; 当得到了光标,触发事件 blur: 失去焦点; 当失去了光标,触发事件 mou
2023-05-21 17:16:29
912
原创 前端基础(jQuery)
HTML指的是。标记就是标签如,标签大多数都是成对出现的。HTML基本结构如下1.1 常用标签(表格、表单、按钮等)函数作用举例结果注释h1~h6标题divdiv标签通常作为块使用(页面布局)p段落所有连续的空格或空行都会被算作一个空格pre段落输入多少空格或行就是多少a链接链接image或img图片 图片图片br换行换行hr分割线,定义水平线b粗体
2023-04-18 16:59:38
1264
原创 网络编程(python)
当TCP客户端程序想要和TCP服务端程序进行通信的时候必须要先建立连接;TCP客户端程序一般不需要绑定端口号,因为客户端是主动发起建立连接的;TCP服务端程序必须绑定端口号,否则客户端找不到这个TCP 服务端程序;listen后的套接字是被动套接字,只负责接收新的客户端的连接请求,不能收发消息;当TCP客户端程序和TCP服务端程序连接成功后﹐TCP服务器端程序会产生一个新的套接字﹐收发客户端消息使用该套接字。关闭accept返回的套接字意味着和这个客户端已经通信完毕;
2023-04-18 16:58:45
921
原创 Redis数据库
redis cluster在设计的时候,就考虑到了去中心化,去中间件,也就是说,集群中 的每个节点都是平等的关系,都是对等的,每个节点都保存各自的数据和整个集 群的状态,每个节点都和其他所有节点连接,而且这些连接保持活跃,这样就保 证了我们只需要连接集群中的任意一个节点,就可以获取到其他节点的数据。集群配置是用于提高可用性和可缩放性。zset类型为有序集台,元素为string类型,元素具有唯一性,不重复,每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序,没有修改操作。
2023-04-18 00:25:37
1303
原创 多线程编程
死锁:一直等待对方释放锁的情景就是死锁,比如有两个人,两根筷子,一个人一次只能拿一根筷子,要拿到两根筷子之后才会放下,不然一直拿着,现在两个人都只拿到了一根筷子,在等另一个人放下,都没释放都在等待造成死锁,代码如下(运行一直不会结束)(推荐使用threading模块,不建议使用thread模块的原因之一是在主线程退出后,所有的其他线程在没有清理的情况下直接退出,threading会确保在重要的子进程在进程结束之后在结束主线程,保持整个进程的存活。:获取进程ID,子进程的父进程的ID和父进程ID是一样的。
2023-04-14 15:23:58
699
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人
RSS订阅