Skip to content

Commit 5697ef9

Browse files
committed
Improved Flask SQLAlchemy example
1 parent 553982c commit 5697ef9

File tree

3 files changed

+14
-7
lines changed

3 files changed

+14
-7
lines changed

examples/flask_sqlalchemy/database.py

Lines changed: 11 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,10 +18,16 @@ def init_db():
1818
Base.metadata.drop_all(bind=engine)
1919
Base.metadata.create_all(bind=engine)
2020

21-
department = Department(name='Informatics')
22-
db_session.add(department)
21+
# Create the fixtures
22+
engineering = Department(name='Engineering')
23+
db_session.add(engineering)
24+
hr = Department(name='Human Resources')
25+
db_session.add(hr)
2326

24-
db_session.add(department)
25-
employee = Employee(name='Peter', department=department)
26-
db_session.add(employee)
27+
peter = Employee(name='Peter', department=engineering)
28+
db_session.add(peter)
29+
roy = Employee(name='Roy', department=engineering)
30+
db_session.add(roy)
31+
tracy = Employee(name='Tracy', department=hr)
32+
db_session.add(tracy)
2733
db_session.commit()
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
graphene[sqlalchemy]
2-
graphql_flask==1.0.0
2+
graphql_flask==1.1.0
33
SQLAlchemy==1.0.11
44
Flask==0.10.1

examples/flask_sqlalchemy/schema.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import graphene
22
from graphene import relay
3-
from graphene.contrib.sqlalchemy import SQLAlchemyNode
3+
from graphene.contrib.sqlalchemy import SQLAlchemyNode, SQLAlchemyConnectionField
44
from models import Department as DepartmentModel, Employee as EmployeeModel
55

66
from database import db_session
@@ -22,5 +22,6 @@ class Meta:
2222

2323
class Query(graphene.ObjectType):
2424
node = relay.NodeField(Department, Employee)
25+
all_employees = SQLAlchemyConnectionField(Employee)
2526

2627
schema.query = Query

0 commit comments

Comments
 (0)