Strapi 创建 CMS 内容管理系统
Strapi 是基于 Node.js 的开源免费的 CMS 内容管理系统。
创建项目
npx create-strapi-app
本例选择 quickstart
快速创建项目,并且不使用模板。
项目创建完成后会自动启动项目,并且在浏览器打开。
首次访问需要注册用户,注册后登录。
创建内容类型
打开 内容类型生成器
,创建 Post 分类,并添加三个字段:
title
:文章标题date
:文章日期content
:文章内容
在创建 Post 内容类型后,就会在左侧出现一个集合菜单 Posts
,可以添加发布文章内容:
配置权限
默认添加的数据都是受保护的,需要配置权限才能查询。
在角色和权限
中配置 Public(普通访问者) 权限
查询数据
在勾选权限选项时右侧高级设置可以看到查询接口地址,使用 Postman 测试:
从 Strapi 获取数据
安装插件
要把 Strapi 的数据添加到数据层,需要用到插件 gatsby-source-strapi
。
配置插件
{resolve: "gatsby-source-strapi",options: {apiURL: "http://localhost:1337", collectionTypes: ["Post"], },
},
查看 GraphQL
重启 Gatsby 后,GraphQL 左侧会增加 allStrapiPost
和 strapiPost
查询数据。
query MyQuery {allStrapiPost {nodes {idtitledatecontent}}
}