本框架实现了扩展机制,所有代码(除了自己新增的代码,比如增删改查或其他任何文件),只要遵循了扩展机制,底层可以通过一行命令一键更新。

更新命令:

  1. php think admin:update

这会将底层代码更新到最新版本,需要环境中安装git并能够直接调用。

实现原理

扩展机制依赖了两个基本的规则,分别是PHP语法中类的继承和ThinkPHP的事件机制。仅此而已,并没有任何的门槛和心智负担。实际上,如果你不需要颗粒度细致到功能的扩展,仅靠类的继承也能完全符合扩展机制,也能实现一键更新。

文件优先级

当你打开本项目的源码后,会发现app下基本没有实质的代码,所有的类都继承了来自extend的文件,视图文件也是一样。

PHP源码

所有源码都在app下,这和ThinkPHP完全一致,所有系统源码都给予下面图中的规则:app中的代码继承底层类。

视图源码

所有涉及视图的操作,都会先到app下找对应的文件,比如Login/index这个方法,会先到app/admin/view/login.html找文件,如果找不到,则会到extend/base/admin/view/login.html,注意,不仅是fetch方法,包括include等也都遵循这个规则,因此理解和写起来很简单。

事件扩展

原文标题:扩展机制

原文文档:ulthon_admin

原文地址:http://doc.ulthon.com/read/augushong/ulthon_admin/660a8523f3a72/zh-cn/2.x.html

原文平台:奥宏文档

2.x