個人測試環境使用docker 進行的安裝node
我使用的是timesacledb 複製集版本,參考https://github.com/timescale/streaming-replication-dockergit
./start_containers.sh
npm install -g postgraphile
psql -U postgres -h localhost create database appdemo
使用watch 參數能夠自動更新apigithub
postgraphile -c "postgres://postgres:postgres@localhost:5432/appdemo" --watch
參考結果
sql
create table person ( id serial primary key, name varchar not null, about text, email varchar not null unique, created_at timestamp default current_timestamp );
自動更新結果
docker
query { allPeople{ nodes { id name } } }
mutation { createPerson(input:{ clientMutationId:"demoappdemo", person:{ name:"dalong", about:"demoappdemo", email:"1141591465@qq.com", createdAt:"2018-07-10" } }){ person { name about email } } }
主要是擴展行行,prisma是多數據庫支持的,基於nodejs 開發模式,同時生態不錯,有好多相關的組件,使用上主要 以模型優先的模式,postgraphile 相對就簡單了,只須要安裝基本上不用寫代碼(固然角色,權限的問題,依然須要處理, 並且在ID的處理上postgraphile有點模糊,還有待仔細閱讀。 詳細的比較後邊會有介紹
https://www.graphile.org/postgraphile/introduction/
https://www.prisma.io/數據庫