
Strapi是一个具有高扩展性的内容管理系统,与常见的wordpress等cms系统不同的是,Strapi不提供CMS网站本身,只提供网站所需的数据管理后台及相关接口。Strapi可以让开发人员通过可视化的方式实现诸如建表、增删改查、权限配置等等数据库操作,并且同步生成接口供网站使用。从低代码角度来说,Strapi可以看做是一款面向数据库的开源低代码系统。
底层技术
Strapi底层服务为koa2,koa2是一个轻量高性能的nodejs服务。数据库方面,Strapi使用sqlite作为默认数据库。
系统模块
Strapi分为Content-Type Builder、Content Manager、Media Library三大模块。
Content-Type Builder主要用于建表,表类型可以时single type、collection type,前者用于搭建单一类型数据表,如网站信息;后者用于搭建集合类型数据表,如分类、餐厅等。
开发人员建完表后,Content Manager内就会出现对应的录入页面。用户可以通过Content Manager对应标签页内录入数据,比如上述的网站信息,分类、餐厅信息等。
Media Library模块用于上传并存储诸如图片、视频、音频等媒体资源供Content Manager使用。默认存储在本地,如果要即将资源上传到诸如阿里云、七牛云等OSS上,可以安装Qiniu Cloud、Aliyun OSS等Providers。
目前Strapi有大量的使用案例,其开源免费、轻量、高性能、易扩展的特性使其在github上拥有48.7k(截止2022年10月)的star数。如果想快速搭建具有数据库的应用,Strapi是不错的选择。即使研发人员后期想自建应用,Strapi届时也可以作为数据库可视化工具使用。