Graphene SQLAlchemy integration
Project description
Please read UPGRADE-v2.0.md to learn how to upgrade to Graphene 2.0.
Graphene-SQLAlchemy
A SQLAlchemy integration for Graphene.
Installation
For instaling graphene, just run this command in your shell
pip install "graphene-sqlalchemy>=2.0"
Examples
Here is a simple SQLAlchemy model:
from sqlalchemy import Column, Integer, String
from sqlalchemy.orm import backref, relationship
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
class UserModel(Base):
__tablename__ = 'department'
id = Column(Integer, primary_key=True)
name = Column(String)
last_name = Column(String)
To create a GraphQL schema for it you simply have to write the following:
from graphene_sqlalchemy import SQLAlchemyObjectType
class User(SQLAlchemyObjectType):
class Meta:
model = UserModel
class Query(graphene.ObjectType):
users = graphene.List(User)
def resolve_users(self, info):
query = User.get_query(info) # SQLAlchemy query
return query.all()
schema = graphene.Schema(query=Query)
Then you can simply query the schema:
query = '''
query {
users {
name,
lastName
}
}
'''
result = schema.execute(query, context_value={'session': db_session})
To learn more check out the following examples:
Full example: Flask SQLAlchemy example
Contributing
After cloning this repo, ensure dependencies are installed by running:
python setup.py install
After developing, the full test suite can be evaluated by running:
python setup.py test # Use --pytest-args="-v -s" for verbose mode
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
graphene-sqlalchemy-2.2.2.tar.gz
(24.3 kB
view hashes)
Built Distribution
Close
Hashes for graphene-sqlalchemy-2.2.2.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | fda3a131149a96f02b18c4d8276102edd80ba22b92939c9a3fc94bda699c1477 |
|
MD5 | 7c639e4b55b9569a73ebd8e2dc40cb7f |
|
BLAKE2b-256 | 21b76f048a507eaf6b6ecc1d9837d78bcf6ee6fc10ec455690783ed5e9070497 |
Close
Hashes for graphene_sqlalchemy-2.2.2-py2.py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 6d5d6687e84350b418c1eca780191526bbd24e53523a0781f70ad2e1bdc64651 |
|
MD5 | 4caad4cbe0e0a956ad93f2d9c725b003 |
|
BLAKE2b-256 | 5204c7c83de5fd5e160fcf445aa34eb2a0d80dcb035666f3284a02dd9eb73b74 |