CloudBase CMS 是一个基于云开发 + Node + React 构建的 Headless CMS 系统。
在经过了一段长时间的准备,CloudBase CMS 2.0 正式与大家见面了。
在新版本中,我们引入了许多新的能力,并进行了大刀阔斧的改进,接下来我们会介绍一下 2.0 版本的主要改动。
UI 界面
本次重大的改变之一就是 UI 界面,我们重新设计了 CMS 的 UI 界面交互,以提供更高的可扩展性,简化了二次开发的难度。
CMS 2.0 采用了新的设计规范,提供了更加简洁、优化的 UI 界面,如下所示
布局优化
CMS 1.0 中,当部分字段内容过长时,会挤压其他字段的显示空间,图片的大小也会显著影响内容集合的展示,造成不合理的显示效果,如下
在 CMS 2.0 中,我们优化了内容数据的展示效果,根据字段的类型不同,都做了对应的展示优化,以提供更好的使用体验。同时,我们也对字段较多的集合进行了优化,支持表格的滚动查看,如下
项目
在新版中,我们引入了项目的概念,可以将一些相关联的数据放置于同一个项目中,对数据资源进行隔离,增加了使用、管理数据的便捷性。
同时项目的划分也有利于权限的控制,可以针对性给予部分人员部分项目的资源访问权限,而不用给予全部权限。
权限控制
在 CMS 1.0 中,权限控制是一个弱项,虽然在 1.2 版本中加入了对数据集合的权限控制,但是使用并不方便,无法做到较细的权限控制粒度。
在新版中,我们重新设计了 CMS 的权限控制体系,引入了基于角色/资源的多维度权限校验体系,以控制用户的访问权限。
CMS 2.0 支持创建自定义用户、自定义角色,实现自由的系统访问权限控制。自定义用户可以绑定任意角色,并获取角色的权限集,实现用户权限的授予。
角色是 CMS 系统资源可访问权限的载体,可以自由组合多种不同的系统资源访问权限。CMS 2.0 支持用户自定义系统中的角色,通过复合的权限规则,指定角色拥有的资源访问权限,如下所示
富文本
基于 braft editor,我们在 CMS 2.0 中引入了全新的富文本编辑器,提供了更好的编辑体验,并支持了图片上传的能力。新的富文本编辑器提供了更丰富的编辑选项,如丰富的布局、列表、代码块、链接等。
内容模型(原内容设置)
在 CMS 2.0 中,我们重新设计了内容模型的编辑方式,由原来的表单形式修改了下面的交互类型
在 1.0 中,CMS 存在一些界限比较模糊的行为表现。如创建内容模型时,会默认有创建时间和修改时间的字段。这种系统的行为模糊了系统字段与用户自定义字段的界限,可能与用户的行为发生冲突。
在 2.0 中,我们引入了系统字段的概念,即通过 CMS 创建数据时,系统会默认添加一些字段,如创建、修改时间,未来可能会有更多的系统字段出现。
同时,在 CMS 2.0 中,所有存储的时间类型都会被格式化为 Unix Timestamp 存储。
CMS 2.0 中内容模型与 1.0 内容设置的数据库存储字段有所不同,如果你依赖了数据库字段,请注意修改。
其他
搜索
CMS 2.0 支持了对字符内容的模糊搜索,同时也支持了过滤搜索,排序等多种数据查询条件。
枚举
CMS 2.0 中新增了枚举类型,适用于从固定集合中选择数据的情况。
登录
CMS 2.0 中更换了用户登录体系,由 1.0 版本中使用的 自定义登录 切换为了 用户名密码登录,在安装时不用再输入自定义登录秘钥,降低了上手难度。
文件
CMS 2.0 中,前端上传的文件将被统一存储在云存储 cloudbase-cms/upload
目录下,并按日划分,采用 uuid + 文件
的格式存储。
Bug Fix
修复了 1.0 中存在的已知问题。
展望
在设计 CloudBase CMS 时,我们吸收了许多业界的先进思想,并利用到 CloudBase CMS 的设计中。CloudBase CMS 将持续聚焦于内容管理,提供更加强大、易用的内容管理系统,减少企业的开发工作,提效研发效率。
想了解 CloudBase CMS 未来的开发计划?来看看 CloudBase CMS 的功能规划表
没有你想要的功能?欢迎提交 Feature Request 说明你想要的功能,当然我们也欢迎你向 CloudBase CMS 共享代码、文章等。