Graphene SQLAlchemy integration
Python Shell

Please read to learn how to upgrade to Graphene 1.0.

Graphene Logo Graphene-SQLAlchemy Build Status PyPI version Coverage Status

A SQLAlchemy integration for Graphene.


For instaling graphene, just run this command in your shell

pip install "graphene-sqlalchemy>=1.0"


Here is a simple SQLAlchemy model:

from sqlalchemy import Column, Integer, String
from sqlalchemy.orm import 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, args, context, info):
        query = User.get_query(context) # SQLAlchemy query
        return query.all()

schema = graphene.Schema(query=Query)

Then you can simply query the schema:

query = '''
    query {
      users {
result = schema.execute(query, context_value={'session': db_session})

To learn more check out the following examples:


After cloning this repo, ensure dependencies are installed by running:

python install

After developing, the full test suite can be evaluated by running:

python test # Use --pytest-args="-v -s" for verbose mode