import graphene from graphene import relay from graphene_sqlalchemy import (SQLAlchemyConnectionField, SQLAlchemyObjectType) from models import Department as DepartmentModel from models import Employee as EmployeeModel from models import Role as RoleModel class Department(SQLAlchemyObjectType): class Meta: model = DepartmentModel interfaces = (relay.Node, ) class Employee(SQLAlchemyObjectType): class Meta: model = EmployeeModel interfaces = (relay.Node, ) class Role(SQLAlchemyObjectType): class Meta: model = RoleModel interfaces = (relay.Node, ) class Query(graphene.ObjectType): node = relay.Node.Field() all_employees = SQLAlchemyConnectionField(Employee) all_roles = SQLAlchemyConnectionField(Role) role = graphene.Field(Role) schema = graphene.Schema(query=Query, types=[Department, Employee, Role])