现在GraphQL变得越来越流行,出现了一些库来更轻松地使用GraphQL和数据库抽象层(如sequelize和bookshelf.js)。
它们似乎都专注于让ORM模型与GraphQL模式的易用性。
然而,我想知道为什么不反过来呢?是否一般情况下可以从GraphQL生成ORM schemata?
由于我不太了解GraphQL,所以无法判断它的限制是否允许此种可能性。但在我的脑海中,只需要定义一个GraphQL模式,就可以将其转换成适用于数据库的格式。
它们似乎都专注于让ORM模型与GraphQL模式的易用性。
然而,我想知道为什么不反过来呢?是否一般情况下可以从GraphQL生成ORM schemata?
由于我不太了解GraphQL,所以无法判断它的限制是否允许此种可能性。但在我的脑海中,只需要定义一个GraphQL模式,就可以将其转换成适用于数据库的格式。
npm install --global gestalt-cli
createdb blogs
gestalt init blogs
cd blogs
cat > schema.graphql << EOM
type Session implements Node {
id: ID!
}
type User implements Node {
id: ID!
email: String! @unique
passwordHash: String! @hidden
}
type Post implements Node {
id: ID!
text: String!
createdAt: Date!
}
EOM
gestalt migrate
npm start
太棒了!现在它正在运行,你可以在浏览器中打开GraphiQL:
open http://localhost:3000/graphql
schema.graphql
,然后运行gestalt migrate
来更新PostgreSQL和GraphQL。