🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
# 整体架构 * * * * * ### 整体区块介绍 ![document/2015-08-23/55d9c9844362e](https://box.kancloud.cn/document_2015-08-23_55d9c9844362e.png) <hr /><hr /> #### 1区域: **功能**:展示系统包含那些子应用 **配置**:在公共Comment下conf下change.php文件中配置 ![document/2015-08-23/55d9cd2731867](https://box.kancloud.cn/document_2015-08-23_55d9cd2731867.png) **设置**: 可以通过键值来设置排序, title为应用标题 model_name 为应用的模块名称,这里采用了thinkphp3.2的模块部署方式,即一个模块为一个应用。根据以上的设置,项目目录大概如下图所示: ![document/2015-08-23/55d9ccc13f9fc](https://box.kancloud.cn/document_2015-08-23_55d9ccc13f9fc.png) 具体将在项目部署中详细介绍。 数组参数也可以根据项目实际来配置。 <hr /><hr /> #### 2区域 **配置:** 可以通过数据库有关表来设计快捷键 **功能:** 方便用户很容易找到自己需要的,比如添加会员,添加文章等。 <hr /><hr /> #### 3区域 **说明:** 这里每一个模块,都应该是一个控制器,并且这些控制器一般来自同一个应用(也可以扩展外部)。 **配置:** 控制器来自于application下每个子模块下conf下的crt.php。 控制器可能有多个分类。分类在数据库中 后台菜单分类中定义,并且每一个分类都有个字段来说明该分类来自哪一个控制器。 **设置:** 可以设置排序,名称,是否显示等功能。 crt.php部分代码如下: ![document/2015-08-23/55d9d0dd6f0ee](https://box.kancloud.cn/document_2015-08-23_55d9d0dd6f0ee.png) <hr /><hr /> #### 4区域 **说明:** 这里可能涉及到钩子思想,每个模块中的这块可以由具体开发人员自定义。 **功能:** 搜索 过滤器 排序 添加 修改 删除等功能(这些可以定义为钩子函数,再权限里面做配置) <hr /><hr /> ### 主题 <hr /><hr /> 默认情况下,在公共Comment的配置文件下已经给所有子模块都开启了主题模块。 `'DEFAULT_THEME' => 'default',` 所以在子模块中,Views下必须创建默认主题Default文件夹。 如果开发人员觉得模块主题不符合要求,可以在自个的配置文件下设置主题。 ### 公共模块(Block) 公共模块Block在applicattion》Public》View》主题》Block下。 作用:比如每个用户都需要开发一个后台侧栏,并且每个侧栏展示和样式都完全一样,在这种情况下,每个只需要有一个开发人员应经开发好了这个侧栏菜单列表,他就可以将该快发布到公共Block中,其他开发人员就不用多写代码,直接引用就好了。 注意:公共模块也默认继承了Default主题,需要在Views下创建默认主题Default。 公共模块必须要有自己独立的css。 宽度和高度尽量定义为100%。 ### 设计原则: 不使用数据库的时候尽量不要使用数据库 不适用数据库区域: 顶部菜单程序员完全定义可以不适用数据库 侧栏控制器只有程序员才能定义 使用数据库区域: 快捷键,客户需要操作 侧栏二级分类,客户需要操作 <div style="border:1px solid #ccc;padding:20px;background:#efefef;margin-bottom:20px;"> 版权所有:duerhong 联系qq:1186969412 </div>