-
Notifications
You must be signed in to change notification settings - Fork 1
Expand file tree
/
Copy pathschema.py
More file actions
72 lines (57 loc) · 2.29 KB
/
schema.py
File metadata and controls
72 lines (57 loc) · 2.29 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
import graphene
from graphene import relay
from graphene_sqlalchemy import SQLAlchemyObjectType, SQLAlchemyConnectionField
from models import db_session, Basic as BasicModel, Education as EducationModel, Occupation as OccupationModel
from models import Household as HouseholdModel, Foodandbeverage as FoodandbeverageModel, Hobbiesandinterests as HobbiesandinterestsModel
class Basic(SQLAlchemyObjectType):
class Meta:
model = BasicModel
interfaces = (relay.Node, )
class BasicConnection(relay.Connection):
class Meta:
node = Basic
class Education(SQLAlchemyObjectType):
class Meta:
model = EducationModel
interfaces = (relay.Node, )
class EducationConnection(relay.Connection):
class Meta:
node = Education
class Occupation(SQLAlchemyObjectType):
class Meta:
model = OccupationModel
interfaces = (relay.Node, )
class OccupationConnection(relay.Connection):
class Meta:
node = Occupation
class Household(SQLAlchemyObjectType):
class Meta:
model = HouseholdModel
interfaces = (relay.Node, )
class HouseholdConnection(relay.Connection):
class Meta:
node = Household
class Foodandbeverage(SQLAlchemyObjectType):
class Meta:
model = FoodandbeverageModel
interfaces = (relay.Node, )
class FoodandbeverageConnection(relay.Connection):
class Meta:
node = Foodandbeverage
class Hobbiesandinterests(SQLAlchemyObjectType):
class Meta:
model = HobbiesandinterestsModel
interfaces = (relay.Node, )
class HobbiesandinterestsConnection(relay.Connection):
class Meta:
node = Hobbiesandinterests
class Query(graphene.ObjectType):
node = relay.Node.Field()
# Allows sorting over multiple columns, by default over the primary key
all_hobbiesandinterests = SQLAlchemyConnectionField(Hobbiesandinterests._meta.connection)
all_foodandbeverages = SQLAlchemyConnectionField(Foodandbeverage._meta.connection)
all_households = SQLAlchemyConnectionField(Household._meta.connection)
all_occupations = SQLAlchemyConnectionField(Occupation._meta.connection)
all_educations = SQLAlchemyConnectionField(Education._meta.connection)
all_basics = SQLAlchemyConnectionField(Basic._meta.connection, sort=None)
schema = graphene.Schema(query=Query)