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 ...
随机推荐
- JavaScript基础---作用域,匿名函数和闭包
匿名函数就是没有名字的函数,闭包是可访问一个函数作用域里变量的函数. 一.匿名函数 //普通函数 function box() { //函数名是 box return 'TT'; } //匿名函数 f ...
- 团队项目作业第二项:利用NABCD模型进行竞争性需求分析
项目需求分析与建议--NABCD模型(王鲁跃负责) N (Need 需求) 对于现在的学生来说,我们认为打字是很重要的.不管在什么方面都需要进行电脑打字,例如文员.QQ.MSN.制作,论文等等,都需要 ...
- 给java应用打包
C:\dollapp\classes> jar -cvf C:\dollapp\deploy\dollapp.jar *.* 上面的jar命令会把 C:\dollapp\classes 下的 所 ...
- Spring-MVC流程图
Spring MVC工作流程图 图一 图二 Spring工作流程描述 1. 用户向服务器发送请求,请求被Spring 前端控制Servelt DispatcherServlet捕获: ...
- Java基础-内部类-为什么局部和匿名内部类只能访问局部final变量
先看下面这段代码: public class Test { public static void main(String[] args) { } public void test(final int ...
- Struts tag -s
1,if/elseif/else标签 <s:set value="19"/> <s:if test="%{#age > 60}"> ...
- BZOJ-1922 大陆争霸 多限制、分层图最短路 (堆+dijkstra)
1922: [Sdoi2010]大陆争霸 Time Limit: 10 Sec Memory Limit: 64 MB Submit: 1154 Solved: 478 [Submit][Status ...
- 【uoj2】 NOI2014—起床困难综合症
http://uoj.ac/problem/2 (题目链接) 题意 给出n个操作包括And,or,xor,求从0~m中的一个数使得经过这些操作后得到的值最大. Solution 大水题..贪心由高到低 ...
- 输入你的性别,身高及体重,判断你的身材是否标准。(用if......else语句)
Console.WriteLine("请输入你的性别,身高和体重:"); string s = Console.ReadLine(); double h = double.Pars ...
- strstr()
char * __cdecl strstr ( const char * str1, const char * str2 ) { char *cp = (char *) str1; char *s1, ...