ThinkCMF 5.1.0 发布:支持 swoole、协议变更为 MIT_weixin_33692284的博客-程序员宅基地

技术标签: git  ui  php  

ThinkCMF5.1 做你的专属开发框架,让你更自由地飞

ThinkCMF5.1化繁为简,基于ThinkPHP 5.1重构所有核心代码 ,目标是做你的专属开发框架,让开发者更自由地创作,开发者只需关注应用插件模板和 API的业务逻辑实现,而所有核心库、核心应用都通过composer包加载。

为了让你更自由地飞,我们在5.1中做了如下调整:

  1. 更改框架协议为MIT,更自由的协议
  2. 更改目录结构,去除simplewind目录
  3. 可以自由定制前后台UI
  4. 核心包、核心应用composer化,把ThinkCMF当库来用
  5. 合并API到框架,更方便地开发 RESTful API
  6. 移除portal应用,让核心更快迭代

ThinkCMF5.1主要特性

  • 更改框架协议为MIT,让你更自由地飞
  • 基于ThinkPHP 5.1重构,但核心代码兼容5.0版本,保证老用户最小升级成本
  • 增加对swoole支持,同时支持swoole协程和全同步模式(请单独安装扩展)
  • 重新规范目录结构,更贴心
  • CMF核心库及应用使用composer加载
  • 合并API到框架核心
  • 更规范的代码,遵循PSR-2命名规范和PSR-4自动加载规范
  • 支持 composer 管理第三方库
  • 核心化:独立核心代码包
  • 应用化:开发者以应用的形式增加项目模模块
  • 插件化:更强的插件机制,开发者以插件形式扩展功能
  • 模板化:前台可视化设计
  • 支持URL美化功能,支持别名设置,更简单
  • 独立的回收站功能,可以管理所有应用临时删除的数据
  • 统一的资源管理,相同文件只保存一份
  • 注解式的后台菜单管理功能,方便开发者代码管理后台菜单
  • 插件同样支持注解式的后台菜单管理功能
  • 文件存储插件化,默认支持七牛文件存储插件
  • 模板制作标签化,内置多个cmf标签,方便小白用户
  • 更人性化的导航标签,可以随意定制 html 结构
  • 后台首页插件化,用户可以定制的网站后台首页

下载地址:

https://www.thinkcmf.com/download.html

开发手册

http://www.kancloud.cn/thinkcmf/doc5_1

Git仓库

  1. GitHub:https://github.com/thinkcmf/thinkcmf/tree/5.1  主要仓库

  2. 码云:https://gitee.com/thinkcmf/ThinkCMF/tree/5.1   中国镜像

演示仓库

此仓库会放官方的一些演示应用,插件,模板,API等

  1. https://github.com/thinkcmf/demos 主要仓库

  2. https://gitee.com/thinkcmf/demos 中国镜像

升级指导

https://www.kancloud.cn/thinkcmf/doc5_1/957915

更新日志

https://www.kancloud.cn/thinkcmf/doc5_1/957914

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_33692284/article/details/89505891

智能推荐

小白初试-阿里云ESC服务器_BQ_zhang的博客-程序员宅基地

小白初试阿里云ESC服务器笔记(一)前言前段时间,根据学长推荐领取了阿里云的云服务器ESC。作为一名小白,刚开始根本不懂云服务器是啥,能干啥用。后来想起来,去年凯哥使用服务器搭了一个个人网站,所以决定使用云服务器搭建一个个人网站,就此了解一下关于云服务器的知识,顺便可以装B。操作过程身为小白的我,可没少踩坑。到目前为止,也只是进行了部分操作。1.了解云服务器ESC在阿里云的文档中介绍,...

Electron-builder NSIS修改默认安装路径_Faith_1427的博客-程序员宅基地_electron-builder默认安装路径

1、新增路径package.json或者vue.config.js下NSIS新增include: './public/installer.nsh'注意,这里的./指的是当前package.json或者vue.config.js,而不是打包之后的2、新增installer.nsh!macro preInit SetRegView 64 WriteRegExpandStr HKLM "${INSTALL_REGISTRY_KEY}" InstallLocation "C:\\wind

C++析构函数的定义和使用_trysee的博客-程序员宅基地

析构函数(destructor)也是一个特殊的成员函数,它的作用与构造函数相反,它的名字是类名的前面加一个“~”符号。在C++中“~”是位取反运算符,从这点也可以想到:析构函数是与构造函数作用相反的函数。当对象的生命期结束时,会自动执行析构函数。具体地说如果出现以下几种情况,程序就会执行析构函数:①如果在一个函数中定义了一个对象(它是自动局部对象),当这个函数被调用结束时,对象

mq通讯支持远程通讯_改善远程通讯的有效方法_weixin_26744853的博客-程序员宅基地

mq通讯支持远程通讯Effective communication is as vital as ever in the time of remote work. As software engineers, communication is not one of our strengths. Being remote makes it even more challenging. 在远程工作期间...

WCF简单实例--用Winform启动和引用_匆匆过客121的博客-程序员宅基地

以订票为例简单应用wcf程序,需要的朋友可以参考下

java jta 例子_Java事务与JTA_树叶航的博客-程序员宅基地

标签:一、什么是JAVA事务通俗的理解,事务是一组原子操作单元,从数据库角度说,就是一组SQL指令,要么全部执行成功,若因为某个原因其中一条指令执行有错误,则撤销先前执行过的所有指令。更简答的说就是:要么全部执行成功,要么撤销不执行。事务必须服从ISO/IEC所制定的ACID原则。原子性(atomicity)一致性(consistency)隔离性(isolation)持久性(durability)...

随便推点

vc++网络安全编程范例(18)-open ssl 实现数字证书编程_chengyixian7877的博客-程序员宅基地

数字证书就是互联网通讯中标志通讯各方身份信息的一系列数据,提供了一种在Internet上验证您身份的方式,其作用类似于司机的驾驶执照或日常生活中的身份证。它是由一个由权威机构-----CA机构,又称为证书授权(Certificate Authority)中心发行的,人们可以在网上用它来识别对方...

Jmeter 读取文件内容 __CSVRead函数助手_Bruce小鬼的博客-程序员宅基地_jmetercsvread读取指定行

Jmeter 读取文件内容 __CSVRead函数助手一、__CSVRead界面__CSVRead元素名称 __CSVRead功能 CSV file to get values from | *alias 读取的文件 Colunm number of CSV file |next|*alias 读取文件列号,支持别名。 二、__CSVRead实例...

compdb/compile_commands.json的生成_启希的博客-程序员宅基地

compdb/compile_commands.json的生成Compiledb-ninja ← 最简单的方法(此方式不支持Kernel仓库)https://github.com/schspa/compiledb-ninja可参照页面说明生成。(可参考vim配置lsp)如果遇到python模块缺失(如click),可使用以下命令安装:pip install --user click注:可以将compiledb-ninja.py链接到PATH包含的路径中,这样就可以直接用compiledb-ni

【安卓开发学习】10.apk反编译工具…_西瓜开了的博客-程序员宅基地

对apk工具的优劣势进行了比较,具体的工具下载地址请google或者百度之。

Eigen arctan2_月亮不知道的博客-程序员宅基地

Refhttps://forum.kde.org/viewtopic.php?t=112142Code#include <iostream>#include <Eigen/Dense>using namespace Eigen;double my_atan2(double a, double b) { return std::atan2(a,b); }int main(){ Matrix4d A, B, C; C = A.binaryExpr(B, std