本文已参与「新人创作礼」活动,一起开启掘金创作之路
Strapi
Strapi是一个无头CMS管理系统,图形化界面创建字段直接生成API接口,非常灵活。用来做服务非常合适。
- 有官方维护的用户管理插件,登录注册接口以及权限管理有了一定的基础。
- 有文件管理插件,文件上传等基础的逻辑可直接使用。
- 另一个特性是直接图形化管理表字段,设置关联字段等,有点儿Pass平台的感觉。直接减少了我们折腾数据库的成本。
- 基于角色的权限管理,可以为每个角色分配不同的权限。
Strapi v3
Strapi 目前最新版本是V4版本了,但是我们在本次开发中决定使用V3版本,有如下几个原因:
- 开发团队为了缩短开发实践,在V4版本中抛弃了对 mongodb 数据库的支持
- v4 版本中接口数据的层级太深。
- 出于性能考虑 v4 版本默认不再在默认接口中返回关联字段
- 笔者使用v3版本较多。 当然,v4 版本中也有很多很棒的特性,这里大家可以自行对比研究。但是这里,我们直接采用v3 版本中的 3.6.8 版本。
准备工作
安装 create-strapi-app
Strapi 提供了工具帮助我们新建项目 create-strapi-app, 我们可以直接安装它,使用它来新建项目。
npm install create-strapi-app@3.6.8 -g
# 或
yarn global add create-strapi-app@3.6.8
安装完成之后运行检查是否安装成功
create-strapi-app --version
# output will be 3.6.8
安装 mongodb
我们采用mongodb作为数据库,关于它的介绍已经很多了。不熟悉的可以搜索文章了解。 这里,我们直接下载安装即可。 mongodb下载
创建项目
【tips】我专门在 gitee 上创建了一个仓库 storm-home-making 用来管理本文章的代码
mkdir storm-home-making
cd storm-home-making
git init
touch README.md
git add README.md
git commit -m "first commit"
git remote add origin https://gitee.com/stormalien/storm-home-making.git
git push -u origin master
创建后台代码
# path/to/storm-home-making
create-strapi-app backend.nodeapi
# 根据提示进行创建