mirror of
https://github.com/hasura/graphql-engine.git
synced 2024-12-18 13:02:11 +03:00
9bd5826020
* allow customizing GraphQL root field names, close #981 * document v2 track_table API in reference * support customising column field names in GraphQL schema * [docs] add custom column fields doc in API reference * add tests * rename 'ColField' to 'ColumnField' * embed column's graphql field in 'PGColumnInfo' -> Value constructor of 'PGCol' is not exposed -> Using 'parseJSON' to construct 'PGCol' in 'FromJSON' instances * avoid using 'Maybe TableConfig' * refactors & 'custom_column_fields' -> 'custom_column_names' * cli-test: add configuration field in metadata export test * update expected keys in `FromJSON` instance of `TableMeta` * use `buildSchemaCacheFor` to update configuration in v2 track_table * remove 'GraphQLName' type and use 'isValidName' exposed from parser lib * point graphql-parser-hs library git repo to hasura * support 'set_table_custom_fields' query API & added docs and tests
59 lines
1.1 KiB
YAML
59 lines
1.1 KiB
YAML
type: bulk
|
|
args:
|
|
- type: run_sql
|
|
args:
|
|
sql: |
|
|
-- create tables
|
|
CREATE TABLE author(
|
|
id SERIAL PRIMARY KEY,
|
|
name TEXT UNIQUE
|
|
);
|
|
CREATE TABLE article(
|
|
id SERIAL PRIMARY KEY,
|
|
title TEXT,
|
|
content TEXT,
|
|
author_id INTEGER REFERENCES author(id)
|
|
);
|
|
|
|
|
|
- type: track_table
|
|
version: 2
|
|
args:
|
|
table: author
|
|
configuration:
|
|
custom_root_fields:
|
|
insert: AddAuthors
|
|
update: UpdateAuthors
|
|
delete: DeleteAuthors
|
|
custom_column_names:
|
|
id: AuthorId
|
|
|
|
- type: track_table
|
|
version: 2
|
|
args:
|
|
table: article
|
|
configuration:
|
|
custom_root_fields:
|
|
insert: AddArticles
|
|
update: UpdateArticles
|
|
delete: DeleteArticles
|
|
custom_column_names:
|
|
id: ArticleId
|
|
author_id: AuthorId
|
|
|
|
- type: create_object_relationship
|
|
args:
|
|
table: article
|
|
name: author
|
|
using:
|
|
foreign_key_constraint_on: author_id
|
|
|
|
- type: create_array_relationship
|
|
args:
|
|
table: author
|
|
name: articles
|
|
using:
|
|
foreign_key_constraint_on:
|
|
table: article
|
|
column: author_id
|