前言
CMS睡榆,內(nèi)容管理系統(tǒng)场航,是指在一個(gè)合作模式下缠导,用于管理工作流程的一套制度。該系統(tǒng)可應(yīng)用于手工操作中溉痢,也可以應(yīng)用到計(jì)算機(jī)或網(wǎng)絡(luò)里酬核。作為一種中央儲存器,內(nèi)容管理系統(tǒng)可將相關(guān)內(nèi)容集中儲存并具有群組管理适室、版本控制等功能。版本控制是內(nèi)容管理系統(tǒng)的一個(gè)主要優(yōu)勢举瑰。
其中strapi是一個(gè)典型的CMS捣辆,官方讀音作stra-pi(不是xxx-api)
基礎(chǔ)設(shè)置
官方給的案例很詳細(xì)(甚至配上了視頻教程)
- 可以通過
yarn create strapi-app my-project --quickstart
命令,在當(dāng)前路徑快速創(chuàng)建項(xiàng)目此迅,可以直接運(yùn)行汽畴。 - 也可以通過npm全局安裝
npm install strapi@beta -g
strapi new my-project
cd my-project
strapi start
注:安裝需要node10.x以上的版本。安裝最新beta版耸序,正式1.6.3版很多功能缺失忍些,雖然有官方文檔但是用的很蛋疼
完成配置后,運(yùn)行
strapi start
正常情況控制臺會提示admin panel的地址坎怪,就是正常的login-page罢坝。如果使用的是上述的quickstart
建立的,賬戶密碼默認(rèn)配置會存儲在本地sqlite環(huán)境搅窿。
不出意外會打開一個(gè)管理后臺嘁酿,剩余的按照官方文檔的教程一步步走就可以了隙券。
其他
官方給的案例中。主要是圍繞Content type(官方稱為資料結(jié)構(gòu))去做文章闹司,至于內(nèi)容的結(jié)構(gòu)都是讓用戶自己去定義命名娱仔,甚至也可以管理員制定結(jié)構(gòu)用戶只負(fù)責(zé)添加內(nèi)容,業(yè)務(wù)層面的東西不過于深究游桩。
最終的結(jié)果就是生成類似于:http://localhost:1337/restaurants
這樣的接口牲迫,返回事先輸入的業(yè)務(wù)數(shù)據(jù)且按照約定的結(jié)構(gòu)輸出。
然后我們就可以通過React (Gatsby or Next.js) or Vue.js (Nuxt.js)借卧,去完成服務(wù)端渲染盹憎。
心得體會
之前沒有接觸過cms的經(jīng)驗(yàn),所以strapi給我有些新穎的感覺谓娃。strapi可以理解為全部通過node去完成的“后端工程”脚乡。關(guān)聯(lián)好database以后,strapi完成了一系列數(shù)據(jù)管理層面的功能滨达,存取數(shù)據(jù)奶稠,返回給前端。雖然實(shí)際應(yīng)用場景并不是那么廣泛捡遍,但類似的cms中锌订,strapi給人的感覺也還不錯(cuò)。??