简洁、流畅、安全、自适应移动设备的后台管理框架(基于ThinkPHP,原名HyFrame)
Document: https://pan.baidu.com/s/1gdCM4iJ
DEMO: https://hyframe.aihe.net.cn/demo/ (ACCOUNT:123/PASSWORD:123123)
框架基于ThinkPHP和Metronic二次封装,集成了众多现代特性(移动适配、AJAX为主),适用于多人协作开发功能模块众多、角色众多的后台管理框架。
系统中的模块,以一个all操作响应路由,并输出基础页面。剩下的列表数据显示、检索、详情查看、新增、编辑、删除等均通过ajax操作的统一入口处理通信请求,操作流畅,对用户友好,对服务也友好!
统一入口的封装,使得开发更为便利,整体质量更容易控制,更安全。
很有现代范的管理系统框架,界面简洁美观,基于Bootstrap的响应式处理。可以提高系统的价值,同时也并不会增加太多工作量。在手机上,屏幕很窄,系统采用众多技术解决在手机上的特殊显示问题,经过多次改进,现有的适配方案表现出众!
框架封装了多模块、多级角色(支持继承)的路由及权限验证,采用统一入口,一般业务无需写控制器,只需要按HyFrame的说明,“配置”强大的Model,剩下的,由框架帮你搞定!框架基于ORM模型进行深入扩展,封装的HyAllModel对象,可以支持通过简单的PHP配置数组来实现CURD的页面效果(列表显示、检索、详情弹窗、新增、删除、修改、表单验证、文件上传等等)!
你也不必要担心扩展的问题。框架封装的时候,无论是PHP代码,还是JS代码,都特别注意对复杂业务的支持,不仅本身要足够强大,而且框架几乎任何地方都对扩展开放,你不必担心非得修改框架源码才能搞定。
框架在安全方面也做了众多考虑,从数据存储、数据通信,对保密性、不可伪造性的保证下了很多功夫。此外,基于RBAC的权限验证思想,支持角色继承,扩展了角色路由的实现,使得即使系统角色再多,也可以让开发简单方便!
在面临较大项目的开发时,多人合作是必须的。对此框架支持并鼓励用模块化思想开发,同时在权限验证、静态资源资源加载等方面,都做了特殊封装,可使得多人合作独立但不失统一!
框架面向较为复杂的管理系统封装,特别注重并发问题。框架在缓存方面做了很多优化,合理利用CACHE,SESSION默认存在数据库中,SESSION的数据量也很小,支持分布式数据库,此外ThinkPHP也支持SAE、BAE等平台。
SESSION:框架默认将SESSION存在数据库中,在高并发、大容量下会有更好的表现(但是框架本身使用的SESSION很小,只有几kb),支持分布式数据库。
能CACHE不SESSION:为了减少数据库请求,我们会采取缓存的策略。如框架会自动将frame_setting表中的系统配置项缓存等,采用Cache方式缓存。再如,对于用户的权限规则,我们不同于众多框架那样进行Session缓存,而是根据角色分类进行Cache,这样可以大大减轻服务器的磁盘开销。
上传下载:采用文件转储的思想,同一个文件(md5值一样)则服务器只保留一份。文件上传通过AJAX方式实现,支持文件类型限制、显示上传进度、文件转储,重复文件自动删除。下载链接是动态的,而且只有当前用户,在当前登录状态可以访问,无需担心数据文件泄露。
统一入口:URL访问通过all操作进入到某一个基础的管理页面(如系统公告),剩下的列表显示、检索、CRUD等均通过ajax操作入口响应AJAX实现。
配置方式加载静态资源:每个模块或页面需要加载的静态资源(JS、CSS),可直观地统一配置,从而多人协作开发时更加方便!
角色权限支持继承:框架对多级角色,无论是从权限控制上,还是编码上,都有很好的支持。可以减少重复的工作量,提高开发效率。
操作日志:系统提供了完备的操作日志记录流程,并提供了检索页面。
系统公告、消息提醒、个人信息及维护、站内邮件已封装在框架之内! 框架附带一个DEMO实例,可以更方便学习和更快上手!
JavaScript:
global/scripts/hyframe.js 框架基础JS库。提供了众多实用的jQuery Tools的扩展,也提供了针对框架的一些工具。
global/scripts/jquery.hyall.js 框架管理页面(All in one)的jQuery插件封装,这样用起来更方便,更强大,支持复杂的情况下一个页面多个实例!
global/scripts/datatable.js 表格Helper
global/scripts/hy-import.js 其他扩展的支持
pages/scripts/login.js 登录页面交互处理
pages/scripts/*.js 页面业务逻辑处理
Controller:
HyFrame 框架基础控制器
HyAll 管理页面控制器(如果需要遵循框架的统一入口,则自己的业务控制器继承此控制器)
HyFile 文件上传下载
HyStart 项目入口,登录等
Empty 每个模块必须有一个Empty控制器,这样就可以实现配合HyAllModel对象配置式编程,不写控制器文件完成管理页面。
Model:
HyFrame 框架基础模型:封装了对连表查询的简单而强大的支持
HyAll 实现配置式编程,负责管理列表页及CRUD,自己的业务模型继承此模型
HyFile 文件上传下载
HyAccount 账号相关,登录、加密等
HyAuth 权限验证及路由
HyNotice 系统公告
HyAlert 消息提醒
HyLog 操作日志
HyMail 站内邮件