官网+快速开始(快速开始用于测试,后边不要用快速开始)
https://strapi.io/
1.安装:
命令行创建,需要yarn。我使用的是VS Code,
#快速开始
yarn create strapi-app my-project --quickstart
#非快速开始
#yarn create strapi-app my-project
2.运行,注册本地管理员用户
运行命令:快速开始是会自动运行的。下边的命令我没测试
cd my-project
yarn develop
http://localhost:1337/admin
填写完成注册(本地使用)
3.创建表(内容类型生成器添加)
有两个坑:
一、名称:显示名称test和高级设置表名称test,最后可能用tests;
二、创建一个不显示,创建两个失败,然后刷新就有了:其实是创建完成后服务重启了,页面没法请求,所以报错失败了
创建然后添加字段,保存。
添加字段的引用可以关联表
配置视图可以选关联表的外键
4.添加记录(需要发行成publish)
5.权限
在设置里,角色和权限,选public,开放,勾选需要的
6.测试
一般用的时候是tests,如果表里的记录没有publish,是看不到的
获取所有记录get
http://localhost:1337/tests
获取30条记录
http://localhost:1337/tests?_limit=30
跳过前10条记录,获取之后的记录
http://localhost:1337/tests?_start=10
获取指定ID记录get
http://localhost:1337/tests/id
统计数量get
http://localhost:1337/tests/count
创建一条记录并返回post
postman中传json格式的raw验证是可以插入的
http://localhost:1337/tests
更新一条记录并返回put
不发送字段的不改,发送字段值为null则改为null
postman中传json格式的raw验证是可以修改的
http://localhost:1337/tests/id
删除一条记录delete
http://localhost:1337/tests/id
插件-GRAPHQL
1.安装
在常规,应用市场中安装,安装完成后服务器会重启
2.使用
http://localhost:1337/graphql
传参内容
query testQuery{
tests{ //我test表,创建完成后左侧显示的表名
id //我test表里的一个字段
date //我test表里的一个字段
}
}
3.使用postman
传参方式为post,body传参,使用graphql
http://localhost:1337/graphql
传参内容同上
query testQuery{
tests{ //我test表,创建完成后左侧显示的表名
id //我test表里的一个字段
date //我test表里的一个字段
}
}
query articlesQuery{
articles(limit: 2,start:0 ){//这里实现了分页查询
title
category{
name
}
}
}
query articles{
article(id:"602c8b55546198221cb281db"){//实现条件查询单个
click
_id
title
content
createdAt
}
}
使用外部数据库,不使用快速开始
1.安装
#quickstart是默认数据库,不使用quickstart使用外部数据库
yarn create strapi-app my-project
流程如下
? Choose your installation type
? Choose your installation type Custom (manual settings)
? Choose your default database client
? Choose your default database client mongo
? Database name: cms_db
? Host: 192.168.199.151
? +srv connection: false
? Port (It will be ignored if you enable +srv): 27017
? Username: cms_db
? Password: cms_db
? Authentication database (Maybe "admin" or blank): cms_db
? Enable SSL connection: No
2.运行
先进目录里
cd my-project
yarn develop