django-cms 代码研究(五)深入(代码结构)
前言:
前戏已经做得比较充分了,下面我们开始步入正题。
代码结构:
cms
|--admin (猜测是admin界面的二次开发和改良)
|--cache (猜测是缓存机制的处理)
|--extensions (猜测是各种扩展的支持包:比如video/picture/teaser等等)
|--forms (猜测是所有的forms.py的集合)
|--locale (国际化)
|--management (想象力有限,此处留空)
|--middleware (中间件)
|--migrations (迁移文件)
|--models (模型)
|--publisher (猜测是发布控制器)
|--signals (想象力有限,留空)
|--sitemaps (网站地图)
|--static (静态文件)
|--templates(模板)
|--templatetags(自定义标签和过滤器)
|--toolbar (猜测是工具包,具体用来干嘛未知)
|--utils (实用类/函数包)
|--tests/test_utils(测试模块:略)
|--api.py (不知道用来干嘛的)
|--app_base.py (貌似是上面的基类)
|--apphook_pool.py (猜测是自动发现并加载app的相关处理)
|--appresolver.py (app解析器)
|--apps.py (app相关处理)
|--cms_plugins.py (插件的处理逻辑,应该和上面的toolbar有一定关系)
|--cms_toolbar.py (工具栏,应该和上面的toolbar有一定关系)
|--contants.py (常量?!)
|--context_processors.py(上下文处理器)
|--exceptions.py(cms异常?)
|--menu.py (菜单挂钩的处理)
|--menu_bases.py (菜单处理的基类)
|--plugin_base.py (插件的基类)
|--plugin_pool.py (插件池)
|--plugin_processors.py(插件处理器)
|--plugin_rendering.py(插件的渲染)
|--toolbar_base.py(工具栏基类)
|--toolbar_pool.py(工具栏池)
|--views.py (视图)
|--urls.py (路由)
下一节:
深入分析plugin
django-cms 代码研究(五)深入(代码结构)的更多相关文章
- dedecms代码研究五
上一次留几个疑问: 1)DedeTagParse类LoadTemplet方法. 2)MakeOneTag到底在搞什么. 从DedeTagParse开始前面,我们一直在dedecms的外围,被各种全局变 ...
- CWMP开源代码研究1——开篇之作
原创作品,转载请注明出处,严禁非法转载.如有错误,请留言! email:40879506@qq.com 声明:本系列涉及的开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅 ...
- [转载]iOS6新特征:UICollectionView官方使用示例代码研究
原文地址:iOS6新特征:UICollectionView官方使用示例代码研究作者:浪友dans 注:这里是iOS6新特征汇总贴链接 iOS6新特征:参考资料和示例汇总 这个链接可以学习到UIColl ...
- dedecms代码研究二
dedecms代码研究(2)从index开始现在继续,今天讲的主要是dedecms的入口代码.先打开index.PHP看看里面是什么吧.打开根目录下的index.php嗯映入眼帘的是一个if语句.检查 ...
- Ningx代码研究.
概述 研究计划 参与人员 研究文档 学习emiller的文章 熟悉nginx的基本数据结构 nginx 代码的目录结构 nginx简单的数据类型的表示 nginx字符串的数据类型的表示 内存分配相关 ...
- UICollectionView官方使用示例代码研究
注:这里是iOS6新特征汇总贴链接 iOS6新特征:参考资料和示例汇总 这个链接可以学习到UICollectionView的相关介绍:iOS6新特征:UICollectionView介绍 由于UICo ...
- 一段markdown编辑器代码研究
一段markdown编辑器代码研究 说明 代码在 https://github.com/dukeofharen/markdown-editor 之所以选择这个来分析是一方面是因为它的代码结构比较简单, ...
- CWMP开源代码研究——git代码工程
原创作品,转载请注明出处,严禁非法转载.如有错误,请留言! email:40879506@qq.com 声明:本系列涉及的开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅 ...
- .NET Core技术研究-通过Roslyn代码分析技术规范提升代码质量
随着团队越来越多,越来越大,需求更迭越来越快,每天提交的代码变更由原先的2位数,暴涨到3位数,每天几百次代码Check In,补丁提交,大量的代码审查消耗了大量的资源投入. 如何确保提交代码的质量和提 ...
- CWMP开源代码研究2——easycwmp安装和学习
声明:本文是对开源程序代码学习和研究,严禁用于商业目的. 如有任何问题,欢迎和我交流.(企鹅号:408797506) 本文所有笔记和代码可以到csdn下载:http://download.csdn.n ...
随机推荐
- Moqui学习之代码分析mantle priceServices.xml
<?xml version="1.0" encoding="UTF-8"?> <!-- This software is in the pub ...
- 前端自动化神器LiveReload配合浏览器和less/sass使用方法
前言:搜了半天,各种推荐,什么十大工具啦.优秀工具集合啦之类的咸淡文章,就是没有一个讲怎么弄的.配合官网的article自己研究了半天总算配置好了.顺便吐槽下官网关于sass/less设置这块说的模糊 ...
- gitlab 配置邮箱
摘自:http://www.tuicool.com/articles/ruyERz 这里我用的是263企业邮箱 这里我们用smtp发送邮件,要是系统自带有sendmail,我们就给他卸掉,yum re ...
- easyui_动态添加隐藏toolbar按钮
目标:动态添加隐藏toolbar,比如根据权限动态显示新增.修改.删除按钮等 思路:先初始化toolbar的所有按钮,加载datagrid其它信息,再根据权限显示隐藏toolbar按钮 步骤: 1.加 ...
- hdu1561 树形dp + 背包
#include<cstdio> #include<cstring> #include<iostream> #define INF 999999999 using ...
- Java基础-常量,变量,成员变量,局部变量
在java中,数据是以常量和变量两种方法形式进行存储和表示的(实际上,所有程序的数据都是这两种形式). 变量 变量代表程序的状态.程序通过改变变量的值来改变整个程序的状态,或者说得更大一些,也就是实现 ...
- 【bzoj1036】 ZJOI2008—树的统计Count
http://www.lydsy.com/JudgeOnline/problem.php?id=1036 (题目链接) 题意 动态维护树上两点间最大权值和权值和. Solution 裸树链剖分. 这一 ...
- PHP Code Reviewing Learning
相关学习资料 http://code-tech.diandian.com/post/2012-11-04/40042129192 http://ssv.sebug.net/高级PHP应用程序漏洞审核技 ...
- 轻量级应用开发之(03)UIVIew
本文是我在学习OC中的一些经验总结,在学习中总结了常用的Mac技巧,欢迎群友对本文提出意见,如有问题请联系我. 一 九宫格-购物车 通过文件加载数据: NSString * file = [[NSBu ...
- 检验php用时
<?php// 实例1 /** * @start time */function proStartTime() { global $startTime; $mtime1 = explode(&q ...