初识OneThink1.0

8-16 287 views

1、ThinkPHP是基于PHP,而OneThink则是基于ThinkPHP,两者皆由TP团队出品。

2、架构设计(简述)

2.1 目录结构

  • wwwroot
  • ├─index.php OneThink入口文件
  • ├─Addons 插件目录
  • ├─Application 应用模块目录
  • ├─Admin 后台模块
  • ├─Conf 后台配置文件目录
  • ├─Common 后台函数公共目录
  • ├─Controller 后台控制器目录
  • ├─Model 后台模型目录
  • ├─Logic 后台模型逻辑目录
  • └─View 后台视图文件目录
  • ├─Common 公共模块目录(不能直接访问)
  • ├─Conf 公共配置文件目录
  • ├─Common 公共函数文件目录
  • ├─Controller 模块访问控制器目录
  • └─Model 公共模型目录
  • ├─Home Home 前台模块
  • ├─Conf 前台配置文件目录
  • ├─Common 前台函数公共目录
  • ├─Controller 前台控制器目录
  • ├─Model 前台模型目录
  • └─View 模块视图文件目录
  • └─User 用户模块(不能直接访问)
  • ├─Api 用户接口文件目录
  • ├─Conf 用户配置目录
  • ├─Common 后台函数公共目录
  • ├─Model 用户模型目录
  • └─Service 用户Service文件目录
  • ├─Public 应用资源文件目录
  • ├─Admin 后台资源文件目录
  • ├─css 样式文件目录
  • ├─images 图片文件目录
  • └─js 脚本文件目录
  • ├─Home 前台资源文件目录
  • ├─css 样式文件目录
  • ├─images 图片文件目录
  • └─js 脚本文件目录
  • └─static 公共资源文件目录
  • ├─Runtime 应用运行时目录
  • ├─ThinkPHP 框架目录
  • └─Uploads 上传根目录
  • ├─Download 文件上传目录
  • ├─Picture 图片上传目录
  • └─Editor 编辑器图片上传目录

2.2 独立模型

  • 在模型管理部分,一个模型即对应一张表。独立模型就是独立的,不与其他表关联的一张数据表。
  • 目前模型数据的管理有4个通用方法:新增/Think/add;编辑/Think/edit;删除/Think/del;列表/Think/lists

2.3 插件设计

  • 为系统提供扩展功能,当关闭时不影响原有系统的一些小组件;
  • 使用钩子,使得插件能够自由的通过钩子在不同位置实现相同或者不同的功能。

2.4 用户行为设计

  • 用户记录是记录用户操作,继而生成日志的操作,在记录日志的同时,也可以操作一些数据,如用户积分的增减。
  • 用户在网站的每一个操作都可以看成是一个行为,例如:登录、评论、发表文章......
  • 在什么情况下需要定义行为: 对某张表的某个字段值的修改是不确定的,且修改操作是由系统自动执行的。

2.5 权限设计

  • 并没有使用rabc作为权限控制,而是选择了扩展的auth类。

2.6 文档模型设计

  • 前台显示的任何类型的文章均可以看成一个文档,而他们的类型则对应各个文档扩展模型。

2.7 分类设计

  • 采用无限极分类设计,Admin模块前端限制为3级分类,需要更多层级需要扩展前端代码。

3、二次开发

 

欢迎留言