自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(97)
  • 资源 (7)
  • 收藏
  • 关注

原创 python编程思路 - 基于rsplit importlib getattr 实现功能

根据配置文件来实现对功能的增删,比如django中的中间件,flask中的类方式引入配置文件,不需要修改源代码,只修改配置文件就可以实现中间件的使用或者不使用。rsplit importlib getattr介绍rsplit 进行字符串切片importlib 以字符串(模块路径)的形式导入模块getattr 反射,动态获取模块中的类需求在警告时,给某人发邮件、短信、微信数据库连接:mysql pgsql …具体实现以发送邮件和短信实现代码文件目录# samples/python/

2022-03-15 14:32:21 1227

原创 vue第三堂课

开启路由新篇章前段路由介绍vue+vue-router 主要是来做单页面应用(Single Page Application)为什么要做单页面应用:传统的开发方式url改变后立马发送请求到后端,响应整个页面,有可能资源过多,传统开发会让前端整个页面出现“白屏”,用户体验不好SPA(单页面应用):锚点值的改变后,不会立刻发送请求,而是在某个合适的时机,发送ajax请求,局部改变页面中的数据,页面不立刻跳转,用户体验好。前段路由原理锚点值(锚点值就是a标签的href属性) 监视ajax获取

2021-12-18 15:32:58 519 1

原创 vue第二堂课

组件局部组件使用局部组件,在哪里使用就去哪里挂载。页面布局:头部、侧边栏、内容区域1.页面中肯定有一个入口组件,需要先声明入口组件。2.挂载子组件3.使用子组件<!DOCTYPE html><html><head> <title></title> <style type="text/css"> </style></head><body><div id='app'

2021-12-14 22:26:01 224

原创 vue第一堂课

vue介绍,入门知识点

2021-12-09 21:55:09 508

原创 python和ruby的内存机制

垃圾回收机制(Garbage Collection),是自动检测和释放不在需要的内存,由程序来帮我们做内存的管理。CRuby的内存机制ruby中所有的变量和常量都仅仅是对象的引用。内存结构在代码执行之前,ruby会提前在堆中创建对象池,所使用的ruby对象都是从这个池子中取出来的,对象池由很多堆页 (page) 构成的,每一个页的大小为 16Kb。 每页中包含 408 个槽 (slot)。 一个槽对应一个对象,每一个槽中放的是一个RVALUE结构体。typedef struct RVALUE {

2021-10-27 11:20:19 273

原创 rest framework框架--视图

视图GenericAPIView# 路由re_path(r'^(?P<version>[v1|v2]+)/api1/$', views.API1View.as_view(), name='api1')# 视图from rest_framework.generics import GenericAPIViewclass API1View(GenericAPIView): queryset = models.Role.objects.all() serializer_c

2021-10-20 22:42:35 121

原创 rest framework框架--序列化源码分析

使用序列化的代码编写自定义Serializers类## 模型类class Media(models.Model): TYPE_CHOICES = ( (1, "pic"), (2, "video") ) type = models.IntegerField(verbose_name='类型', choices=TYPE_CHOICES, default=1) url = models.CharField(verbose_name='图

2021-10-20 21:05:33 97

原创 rest framework框架--分页

有三类分页:看第n页,每页显示多少数据,PageNumberPagination在某个位置向后查看多少条数据,LimitOffsetPagination加密分页,只能看上页和下页,会存储当前页的数据库记录的id最大值和id最小值,CursorPagination对其了解到如何使用就可以了。PageNumberPagination使用基本使用1.settings.py文件中配置每页显示条数REST_FRAMEWORK = { 'PAGE_SIZE': 2,}2.路由,显示角色

2021-10-19 22:19:26 392

原创 rest framework框架--序列化

数据准备models.pyfrom django.db import models# Create your models here.class Group(models.Model): title = models.CharField(verbose_name="组名", max_length=32)class Role(models.Model): title = models.CharField(verbose_name="角色名", max_length=32)

2021-10-19 21:03:09 495

原创 drf解析token中携带的数据

1.用户登录时生成token时,给payload中添加数据生成token的方式是手动进行生成,用户登录接口任何人都可以访问,只要账号密码正确,就根据用户信息生成一个access,用来颁发给用户,用户下次访问携带着access的值,就可以访问我们的其他接口。默认的access的payload部分和用户相关的只有·user_id·,如果我们还需要携带用户的角色类别信息该怎么做呢?建议不要携带用户的敏感信息,这部分内容只要有人拿到了token内容就可以解析出payload部分携带的数据。###1.拿到传递

2021-10-19 17:53:18 475

原创 CRM项目之stark组件之列表页面功能补充4

排序用户可以在自定义的handle类中来决定排序的规则StarkHandel类中编写如下代码,给用户留出接口class StarkHandle(object): order_list = [] # 设定排序的规则 def get_order_list(self): """ 获取排序规则的顺序列表 :return: """ return self.order_list or ['-id', ]用户通过在

2021-08-25 15:17:09 197

原创 CRM项目之stark组件之列表展示页面详细功能实现3

分页

2021-08-20 12:22:43 233

原创 CRM项目之stark组件url的视图函数和列表页面基本展示2

页面上展示数据表的表头我们注册了UserInfo表之后,在视图函数change_list_view中执行data_list = self.model_class.objects.all()就可以拿到该表中的所有数据,但是页面上还欠缺一个表头信息,通过verbose_name = self.model_class._meta.get_field('name').verbose_name拿到字段对应的Field对象再拿到我们设置上去的verbose_name的值。多个模型类下的字段是不相同的,所以要展示那些

2021-08-17 19:37:01 108

原创 CRM项目之stark组件自动生成url 1

缺点: 用户表数据分散,有两地方,在对用户数据进行操作时需要进行跨表操作优点: 可以利用上rbac中的用户管理功能,功能比较简单,只能操作几个数据,如果用户数据信息多,需要自己编写用户管理系统,不适用rbac中的。 rbac中的用户管理系统只管理了几个用户数据。...

2021-08-13 11:25:15 249

原创 CRM项目之权限分配6

权限分配思路在一个页面分为三个面板(左中右三块),分别展示所有用户,所有角色,所有权限。用户的展示:将所有用户展示,点击用户显示所有角色界面,为该用户分配角色其分配角色。角色的展示:展示被点击用户所拥有的角色,选中角色对应的checkbox框来为该用户分配权限。权限的展示:有三层,一级菜单->可做二级菜单的权限->不可做菜单的权限,可做三层循环来展示,为其构造用于循环展示的格式的数据menu_permission_list = [ # 一级菜单 {

2021-08-05 14:52:20 303

原创 CRM项目之权限批量操作5

需先掌握的知识点formsetForm组件或者ModelForm用于做一个表单的验证,一个表单即是一个表中的一行数据的操作。formset组件是用于做多个表单验证的组件。

2021-08-02 17:29:48 232

原创 formset 实现表单的批量操作

Form和ModelForm用于做一个表单的验证,一个表单就是数据库表中的一行数据。formset用于做多个表单验证的组件。对权限的批量增加页面的展示和提交模型类:class Menu(models.Model): """ 一级菜单表 """ title = models.CharField(verbose_name='一级菜单名称', max_length=32) icon = models.CharField(verbose_name="图标", max_

2021-08-01 18:44:39 562

原创 自动发现Django项目中的所有url

urlpatterns下url生成的对象类型urlpatterns = [ url(r'^admin/', admin.site.urls), # RegexURLResolver url(r'^rbac/', include('rbac.urls', namespace='rbac')), # RegexURLResolver url(r'^', include('web.urls')), # RegexURLResolver url(r'^/index', ind

2021-07-31 16:37:41 251

原创 CRM项目之权限管理4

介绍权限分配就是给角色分配权限,给用户分配角色,之前我们都是通过django admin来进行权限分配的,但是我们实现的是rbac组件,相应的权限分配功能我们应该也由自己实现并集成到rbac中。功能实现更友好的权限分配页面。角色管理用户管理菜单和权限管理批量权限操作权限分配...

2021-07-30 10:10:57 314

原创 CRM项目之页面按钮

权限粒度控制到按钮在上面的页面中,有添加缴费记录、删除缴费记录、修改缴费记录三个按钮,这三个按钮的权限不是对所有用户开放的,对与有权限的用户展示这些按钮是正常的,但是对于没有权限去操作按钮的用户,我们应该将无权限的按钮隐藏起来。就是说页面中的按钮显示与否,根据服务端权限配置来决定的,这就是权限粒度控制到按钮级别。方式一:我们之前在session中存储的权限信息结构是 [ { 'id': 1, 'url': '/customer/

2021-07-22 17:05:54 221 1

原创 CRM项目之动态菜单2

动态菜单介绍主要为一级菜单和二级菜单两种。根据用户的不同看到的菜单是不一样的。一级菜单思路思考:菜单和权限的关系权限就是url,点击一个菜单是发送一个url到后端请求内容,也就是说菜单的本质是url。但是并不是所有的url都可以做菜单,由管理员动态来决定哪个url可以作为权限,需要在权限表中新增一列来设定该url是否可以作为菜单。实现步骤:权限表中新增一列来辨识url是否可以作为菜单,录入菜单信息用户登录后,拿到可以作为菜单的url存储到session中在访问有菜单的界面时,动

2021-07-21 11:11:07 362

原创 CRM项目之权限控制1

权限系统介绍在一个公司有不同的等级,不同等级看到的信息是不同的,这就是权限。如一个项目下的资料只能该项目中成员能看,其他项目组人员不能查看(没有权限)。在web中什么是权限?一个url就是一个权限。一个url就是一个功能,有没有权限去访问这个功能。权限就是将某个url分配给某个人。权限表结构设计第一版用户表:id | name权限表:id | url基于用户设计表结构,每个人的不同权限是url的访问权限。一个人有多个权限,一个权限对应多个人,所以两张表是多对多关系。用户权限关系表: 用

2021-07-12 11:40:06 437

原创 jquery事件

事件流事件流描述的是从页面中接收事件的顺序。DOM事件流事件捕捉阶段处于目标阶段事件冒泡阶段事件捕获过程中,document对象首先接收到click事件,然后事件沿着DOM树依次向下,一致传播到事件的实际目标,就是id为btn的a标签。接着所在事件冒泡过程中,事件开始时由最具体的元素(a标签)接收, 然后逐级向上传播到较为不具体的节点(document)。在jquery中是没有捕获阶段的,在实际项目中用不到捕获阶段。事件冒泡的处理<!DOCTYPE html><ht

2021-07-04 16:23:29 90

原创 jquery位置信息

jquery位置信息内容宽高// width() height() 没有参数是获取值,有参数是设置值console.log($('.box').width()); // 获取的内容宽高,即style中设置的内容宽高console.log($('.box').height());//设置宽高$('.box').height('300px');$('.box').width('300px');内部宽高内部宽高=内容宽高+padding// 内部宽,内部高 innerHeight()

2021-07-04 11:02:47 51

原创 jquery操作DOM文档

对DOM的创建,插入,移除,清空等操作。插入操作父子之间的插入append() appendTo() 方法的展示<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="jquery-3.6.0.js"></script></head&gt

2021-07-04 10:23:20 66

原创 jquery的属性操作

对html属性操作attr() 设置属性值或者返回被选元素的属性值removeAttrr() 删除属性<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <script src="jquery-3.6.0.js"></script> <style>

2021-07-03 13:15:46 76

原创 jquery动画

基本动画$('div').show();无参数,表示让指定的元素直接显示出来。$('div').show(3000);通过控制元素的宽高、透明度、display属性逐渐显示。$('div').show("slow"); 和方式二一样。参数可以是slow,normal,fast。#('div').show(5000, function(){alert("动画执行完毕");}); 动画执行完毕立即执行回调函数上述时间控制都是毫秒为单位的。显示动画:show()隐藏动画:hide()开关式显示隐

2021-07-03 10:19:45 75

原创 jquery介绍和选择器使用

jquery介绍jquery时一个快速、小巧、功能丰富的javascript库,只是封装了js的dom操作和ajax。jquery下载压缩版:用于生产环境,jquery-3.3.1…min.js未压缩版:用于开发环境,jquery-3.3.1.js使用jquery引入包:<script type="text/javascript" src="jquery-3.3.1.js"></script>jquery是全局的一个函数,当调用$()时,内部会帮我们new jQuer

2021-07-03 08:52:35 97

原创 定时器使用

一次性定时器:setTimeout(fn,1000ms),多长时间后只执行一次回调函数。周期性循环定时器:setInterval(fn回调函数,1000ms),每隔多长事件执行一次回调函数。一次性定时器如果未来数据的请求出现数据阻塞的问题,可以考虑使用setTimeout()来执行异步操作,数据交互时使用非常频繁。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <t

2021-07-02 10:33:54 326

原创 DOM的案列

需求一打开网页时,点击登录显示一个背景图,中心弹出一个登录框,登录框右上角又关闭按钮点击关闭。

2021-06-30 14:18:46 59

原创 认识DOM

什么是DOMDocument Object Model 文档对象模型,可以理解为代表网页文档的一颗树(模型)。document对象是树根,html,head,body都是树节点。在DOM中一切都是节点(或者元素),元素、节点表示的就是标签对象。DOM用来干什么找对象(元素节点)(获取DOM)设置标签的属性值设置标签的样式动态创建元素和删除元素事件的触发响应:事件源、事件、事件的驱动程序获取DOM对象...

2021-06-29 20:59:15 74

原创 css定位

相对定位使用position:relative;来设定<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> .box1{ width:200px; height:200px; background-color:red; /*如果当前盒子只设置相对定位

2021-06-23 18:27:40 57 1

原创 background系列使用

backgroud-image使用将本地照片传递到background-image属性中,会在div中显示背景照片,如果照片大小和设定的大小不一致,会出现平铺现象。<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> div{ h

2021-06-22 14:51:45 509

原创 a标签实例

<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>Title</title> <style> *{ padding:0; margin:0; } .nav{ background-color:g

2021-06-21 21:06:26 102

原创 css浮动

浮动的介绍指的是一个元素脱离文档流,悬浮在父元素之上的现象。网页的制作,是一个“流”从上而下,编织每一个标签的(和织毛衣一样,从上到下),不能像PS设计软件,想在哪里画就在哪里画。文档流的一个例子:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>浮动</title> <style> *

2021-06-21 14:46:32 111

原创 css盒模型

盒模型介绍盒模型有五个属性:内边距 padding外边距 margin边框 border高度 height宽度 width用月饼来解释一下这几个属性:将上图降为一个二维来看,月饼袋子到黄色壳子之间的距离a是外边距(margin)。黄色壳子e就是边框(border).黄色壳子到月饼之间的距离b就是内边距(padding)。月饼的高度c和宽度d就是内容的高度(height)和宽度(width)也就是能吃的那一部分大小)。结合代码来看:<!DOCTYPE html>&l

2021-06-16 10:25:37 57

原创 css的特性

继承性css就是在设置属性的,设置的是style的属性。给父级标签设置一些属性,子级标签继承了父级的该属性。有一些属性是可以继承的:color,font-*,text-*,line-*文本元素。像一些盒子元素,定位元素(浮动,绝对定位,固定定位是不能继承的。允许样式不仅应用于特定的html标签元素,而且应用于其后代元素。即孙子标签同时继承爷爷,父亲标签的属性。<!DOCTYPE html><html lang="en"><head> <meta

2021-06-11 16:03:19 42 1

原创 css引入方式和选择器

css是指层叠样式表,样式定义如何显示HTML元素。通常会把样式规则的内容保存在css文件中。

2021-06-10 16:36:53 83

原创 HTML简单入门

html 文档结构html是网页组成的结构部分,对内容的骨架搭建。其书写格式是标签形式,有双闭合和单闭合标签。<!--第一行声明文档的类型,标记文档为HTML5的文件,必须进行此声明--><!DOCTYPE html><!--页面的根节点--><html lang="en"><head><!-- head标签中包含头部的信息,是一个容器,可以包含style title meta script link 等-->&l

2021-06-07 21:25:55 77

原创 django博客项目-后台管理之文章新增功能

实现一个文本编辑器kindeditor集成到项目。选择这个文本编辑器的原因是其资料比较齐全,使用方式简单,十分的友好,具体参考http://kindeditor.net/demo.php。kindeditor引入kindeditor准备1.kindeditor下载2.解压放到项目的static目录下html中使用script引入代码{% block content %}<form action="" method="post"> {% csrf_token %}

2021-06-02 19:13:54 163 1

lxt_stark增删查改完成.rar

stark组件基本完成

2021-08-22

lxt_stark_列表展示页面应用样式.rar

crm的stark组件开发

2021-08-18

linux 桌面国家测试标准文档

Linux桌面操作系统测试方法

2021-03-09

linux 桌面国家测试标准文档

linux 桌面国家测试标准文档

2021-03-08

linux 桌面国家测试标准文档

国标测试标准文档

2021-02-24

ios本地音乐播放器

本地音乐播放器,可以显示照片,歌手,歌名,可以调整音量,显示进度

2018-10-11

大数运算项目代码

该项目支持表达式计算,表达式既可以计算机器能存储的数,也能计算超过机器最大表示范围的数

2017-08-11

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除