- 博客(12)
- 收藏
- 关注
原创 django class-based views 继承关系 。
django 基于类的视图,之间复杂的继承关系,网上关于这方面的资料很少,我整理了一下。这个图片格式还在调整中,可能不方便,我另外存了xmind 格式,存入百度云盘,下载地址是https://pan.baidu.com/s/1mGNdKld-BzkgLXV7Nxb67g提取码fgey。我整理的继承关系 如果有差错的地方,能评论指出。...
2019-05-25 14:24:10
396
原创 celery 源码解析(二) worker 实例化过程 跟 执行任务过程
从 command_line 出发 解析 worker 实例化 过程跟 任务执行过程。关于command 的执行过程,可以参考 简书 一篇文,链接在下面。关于celery 的 command 模块 写得非常好,有空模仿它的自己写一些。https://www.jianshu.com/p/e39ef0073e18下面直接开始celery 的 实例化过程,下面直接 是 celery 的 st...
2019-01-07 09:35:28
645
原创 关于 PHP 的框架 phalcon 学习(一) url 路由过程。
phalcon 这个轮子 都说不错,可是 对于 看惯了 python源码的人 ,还是很有意思得,下面是对phalcon 的一点理解 跟 一点不完全的代码。项目 是用 phalcon-tool 命令行自动生成的。框架的 入口文件 是public 下 的index.php, 具体内容如下,try { /** * The FactoryDefault Dependency ...
2019-01-02 00:46:45
1424
原创 celery task 实例化过程 跟调用机制。
在 jumpserver 中 通过 很多异步执行的task,从task 入口 了解下celery 的机制过程。首先callable 对象 都可以被当作 实例化成task,主要 是由装饰器 实现得,一种是 @app.taks 实现得 ,从这开始 作为一个入口,来看看 task 的实例化过程以及调用过程。自己写了个小demo debug 了解 task 实例化过程中 一步一步 具体的执行流程 ,...
2019-01-01 22:21:25
1566
原创 基于django 开发的框架 jumpserver 源码解析(六) celery 的 集成 以及 ansible api 的调用过程。
celery 的 集成 以及 ansible api 的调用过程。django 框架集成了celery ,初衷就是一下 请求到view 的时候,需要执行一些耗时程序,需要一个异步的东西,来代替执行。jumpserver 中 出现了大量 这样的源码。class AssetRefreshHardwareApi(generics.RetrieveAPIView): """ ...
2018-12-30 20:12:49
2848
原创 基于django 开发的框架 jumpserver 源码解析( 五)Restiful 风格 的 接口 跟 增删改查方法。
Restiful 风格 的 接口 跟 增删改查方法。jumpserver 中 用了大量这样的接口, 看源码 api.AdminUserAuthApi.as_view(), name='admin-user-auth'), url(r'^v1/admin-user/(?P<pk>[0-9a-zA-Z\-]{36})/connective/$', ...
2018-12-24 22:48:16
1008
原创 基于django 开发的框架 jumpserver 源码解析(四)对基于视图的 几大视图类 跟 rest_framework 的 序列化过程
对基于视图的 几大视图类 跟 rest_framework 的 序列化过程django 的 视图类 分为两大派系。第一种是 django 自带的templateview 。templateview 源码class TemplateView(TemplateResponseMixin, ContextMixin, View): """ Render a te...
2018-12-23 23:06:08
1468
原创 基于django 开发的框架 jumpserver 源码解析(三) 基于 rest_framework 的 url 路由 跟 数据 跟 前端交互。
基于 rest_framework 的 url 路由 跟 数据 跟 前端交互。 为了要让 django 支持 RESTful 风格 的 接口 需要 用到 第三方组件,来 分析下rest_framework 对 request 做了什么 ,又对 context 做了什么?照 惯例,先贴出源码 router = BulkRouter()router.register(r...
2018-12-23 13:30:06
2323
原创 基于django 开发的框架 jumpserver 源码解析(二)django 上下文 context 以及 模板渲染引擎
django 上下文 context 以及 模板渲染引擎 当reques 到 达视图类的时候,会根据 request 的 method 属性 来调用相应 视图类 的 方法,这是上一篇文章中分析的逻辑,接下来接着分析,视图类 对数据库的操作 以及 返回上下文对象给模板得 这一交互过程,下面贴出 源码。class AssetListView(AdminUse...
2018-12-22 21:36:20
1123
原创 基于django 开发的框架 jumpserver 源码解析(一) 基于类的视图,以及url 路由解析
基于类的视图,以及url 路由解析 jumpserver 这个轮子是好跑的轮子,又大又圆,对源码进行解析。 jumpserver 中 用了 大量的基于类的视图函数,相对抽象一点,隐藏了一些细节。大量使用 类似下面的url路由。urlpatterns = [ url(r'^v1/assets-bulk/$', api.AssetListUpdateApi.as_view...
2018-12-22 12:59:33
4046
原创 python 源码解析(一)
为了看懂 python 源码 ,特地学了 c++ ,依然看不懂,看了个大概,先留个坑,慢慢填。先从 python dict 对象开始看起。python dict 对象 是键值对的 一种结构,类似于 java 的hashmap 对象。dictd 对象 , 每个键值对 ,被 c 的 struct 结构定义,两个指针,一个指向key ,另一个 指向value.typedef stru...
2018-12-04 22:28:00
681
原创 python简洁代码实现快速排序
快速排序 最优时间复杂度为nlogn,因为要完成n个嵌套调用,,但比冒泡排序要快python实现逻辑过程是这样得。 1.设置两个游标 left跟right 2.设置基准值,网上有方案设置中间数为基准值,但计算比较麻烦,而且并不一定高效,这里设置列表最右的那个元素为基准值, 3.left游标 从左向右移动,当游标指向元素大于基准值时,停下,交换right游标指向的元素 4 同理 right右
2017-10-27 20:44:44
350
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人