Skip to main content

sqlalchemy-graphql-schemagen

Generate a full (query/mutation) GraphQL Schema from your defined classes in a declarative_meta() Model.

Example

#!/usr/bin/env python
from flask import Flask
from flask_graphql import GraphQLView
from sqlalchemy import create_engine
from medgraphqlapi import generate_custom_column_docstrings
from sqlalchemy_graphql_schemagen import SQLAlchemyGraphQLSchemaGenerator

from medgraphqlapi.database_schema import Base as sa_base_declarative

################################
# SQLAlchemy Stuff
################################
sa_connection_string = "mssql+pyodbc://XXXXXXXXXXXX"

# Create the Engine
sa_engine = create_engine(sa_connection_string)

# Generate more useful columns' docstrings (ex.: type length, collation, ...)
generate_custom_column_docstrings(sa_base_declarative)

################################
# Build a GraphQL Schema from the SQLAlchemy Schema, using sqlalchemy_graphql_schemagen!
################################
graphql_schema = SQLAlchemyGraphQLSchemaGenerator(
    "ApiName",
    sa_base_declarative,
    sa_connection_string=sa_connection_string,
).get_graphene_schema()

################################
# Instantiate Flask App
################################
app = Flask(__name__)

# Plug GraphQLView
app.add_url_rule("/graphql",
                 view_func=GraphQLView.as_view("graphql",
                                               schema=graphql_schema,
                                               graphiql=True))

# That's it!
if __name__ == "__main__":
    app.run(host="0.0.0.0")

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sqlalchemy-graphql-schemagen-1.0.4.tar.gz (12.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

sqlalchemy_graphql_schemagen-1.0.4-py3-none-any.whl (16.2 kB view details)

Uploaded Python 3

File details

Details for the file sqlalchemy-graphql-schemagen-1.0.4.tar.gz.

File metadata

  • Download URL: sqlalchemy-graphql-schemagen-1.0.4.tar.gz
  • Upload date:
  • Size: 12.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.0

File hashes

Hashes for sqlalchemy-graphql-schemagen-1.0.4.tar.gz
Algorithm Hash digest
SHA256 c6a330e41509007b98388102e92562d7de27b00e1a70e51941e9490aec30e32a
MD5 2dab897f5f7d4c4b1dedf29a4ed0207e
BLAKE2b-256 b5850bd21fd7e08674ddeb19abb29ba99a452f0c0c28ccc3229f5a39fb6dd5b7

See more details on using hashes here.

File details

Details for the file sqlalchemy_graphql_schemagen-1.0.4-py3-none-any.whl.

File metadata

  • Download URL: sqlalchemy_graphql_schemagen-1.0.4-py3-none-any.whl
  • Upload date:
  • Size: 16.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/49.6.0 requests-toolbelt/0.9.1 tqdm/4.48.2 CPython/3.7.0

File hashes

Hashes for sqlalchemy_graphql_schemagen-1.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 132f7d4feaba4edf4c88eee02bef505b9fae73e19b119222bdf4d03194dcaaf3
MD5 642dfd9732f5616d102173ed0e99922e
BLAKE2b-256 4fc9a9d6542486cb134031cc4270ca35644ab0ccff005ab3cce58abda2b1cab8

See more details on using hashes here.

Release history Release notifications | RSS feed

1.0.6

2 files

1.0.5

2 files

This release

1.0.4 This release

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

1.0.0

2 files

0.9.9

2 files

0.9.8

2 files

0.9.7

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page