1
+ import mongoengine
1
2
from datetime import datetime
2
- from mongoengine import (
3
- connect , Document , EmbeddedDocument
4
- )
5
3
from mongoengine .fields import (
6
4
DateTimeField , EmailField , EmbeddedDocumentField ,
7
5
FloatField , EmbeddedDocumentListField , ListField , LazyReferenceField ,
8
6
MapField , MultiPolygonField , PointField , PolygonField ,
9
7
ReferenceField , StringField ,
10
8
)
11
9
12
- connect ('graphene-mongo-test' , host = 'mongomock://localhost' , alias = 'default' )
10
+ mongoengine . connect ('graphene-mongo-test' , host = 'mongomock://localhost' , alias = 'default' )
13
11
14
12
15
- class Publisher (Document ):
13
+ class Publisher (mongoengine . Document ):
16
14
17
15
meta = {'collection' : 'test_publisher' }
18
- name = StringField ()
16
+ name = mongoengine . StringField ()
19
17
20
18
@property
21
19
def legal_name (self ):
@@ -25,42 +23,44 @@ def bad_field(self):
25
23
return None
26
24
27
25
28
- class Editor (Document ):
26
+ class Editor (mongoengine . Document ):
29
27
"""
30
28
An Editor of a publication.
31
29
"""
32
30
33
31
meta = {'collection' : 'test_editor' }
34
- id = StringField (primary_key = True )
35
- first_name = StringField (required = True , help_text = "Editor's first name." , db_field = 'fname' )
36
- last_name = StringField (required = True , help_text = "Editor's last name." )
37
- metadata = MapField (field = StringField (), help_text = "Arbitrary metadata." )
38
- company = LazyReferenceField (Publisher )
32
+ id = mongoengine . StringField (primary_key = True )
33
+ first_name = mongoengine . StringField (required = True , help_text = "Editor's first name." , db_field = 'fname' )
34
+ last_name = mongoengine . StringField (required = True , help_text = "Editor's last name." )
35
+ metadata = mongoengine . MapField (field = mongoengine . StringField (), help_text = "Arbitrary metadata." )
36
+ company = mongoengine . LazyReferenceField (Publisher )
39
37
40
38
41
- class Article (Document ):
39
+ class Article (mongoengine . Document ):
42
40
43
41
meta = {'collection' : 'test_article' }
44
- headline = StringField (required = True , help_text = "The article headline." )
45
- pub_date = DateTimeField (default = datetime .now ,
46
- verbose_name = "publication date" ,
47
- help_text = "The date of first press." )
48
- editor = ReferenceField (Editor )
49
- reporter = ReferenceField ('Reporter' )
42
+ headline = mongoengine .StringField (required = True , help_text = "The article headline." )
43
+ pub_date = mongoengine .DateTimeField (
44
+ default = datetime .now ,
45
+ verbose_name = "publication date" ,
46
+ help_text = "The date of first press." )
47
+ editor = mongoengine .ReferenceField (Editor )
48
+ reporter = mongoengine .ReferenceField ('Reporter' )
50
49
51
50
52
- class EmbeddedArticle (EmbeddedDocument ):
51
+ class EmbeddedArticle (mongoengine . EmbeddedDocument ):
53
52
54
53
meta = {'collection' : 'test_embedded_article' }
55
- headline = StringField (required = True )
56
- pub_date = DateTimeField (default = datetime .now )
57
- editor = ReferenceField (Editor )
58
- reporter = ReferenceField ('Reporter' )
54
+ headline = mongoengine . StringField (required = True )
55
+ pub_date = mongoengine . DateTimeField (default = datetime .now )
56
+ editor = mongoengine . ReferenceField (Editor )
57
+ reporter = mongoengine . ReferenceField ('Reporter' )
59
58
60
59
61
- class Reporter (Document ):
60
+ class Reporter (mongoengine . Document ):
62
61
63
62
meta = {'collection' : 'test_reporter' }
63
+ < << << << HEAD
64
64
id = StringField (primary_key = True )
65
65
first_name = StringField (required = True )
66
66
last_name = StringField (required = True )
@@ -69,30 +69,39 @@ class Reporter(Document):
69
69
articles = ListField (ReferenceField (Article ))
70
70
embedded_articles = ListField (EmbeddedDocumentField (EmbeddedArticle ))
71
71
embedded_list_articles = EmbeddedDocumentListField (EmbeddedArticle )
72
+ id = StringField (primary_key = True )
73
+ first_name = StringField (required = True )
74
+ last_name = StringField (required = True )
75
+ email = EmailField ()
76
+ articles = ListField (ReferenceField (Article ))
77
+ embedded_articles = ListField (EmbeddedDocumentField (EmbeddedArticle ))
78
+ embedded_list_articles = EmbeddedDocumentListField (EmbeddedArticle )
79
+ awards = ListField (StringField ())
72
80
73
81
74
- class Player (Document ):
82
+ class Player (mongoengine . Document ):
75
83
76
84
meta = {'collection' : 'test_player' }
77
- first_name = StringField (required = True )
78
- last_name = StringField (required = True )
79
- opponent = ReferenceField ('Player' )
80
- players = ListField (ReferenceField ('Player' ))
81
- articles = ListField (ReferenceField ('Article' ))
82
- embedded_list_articles = EmbeddedDocumentListField (EmbeddedArticle )
85
+ first_name = mongoengine . StringField (required = True )
86
+ last_name = mongoengine . StringField (required = True )
87
+ opponent = mongoengine . ReferenceField ('Player' )
88
+ players = mongoengine . ListField (mongoengine . ReferenceField ('Player' ))
89
+ articles = mongoengine . ListField (mongoengine . ReferenceField ('Article' ))
90
+ embedded_list_articles = mongoengine . EmbeddedDocumentListField (EmbeddedArticle )
83
91
84
92
85
- class Parent (Document ):
93
+ class Parent (mongoengine . Document ):
86
94
87
95
meta = {
88
96
'collection' : 'test_parent' ,
89
97
'allow_inheritance' : True
90
98
}
91
- bar = StringField ()
92
- loc = MultiPolygonField ()
99
+ bar = mongoengine .StringField ()
100
+ loc = mongoengine .MultiPolygonField ()
101
+ # reference = GenericReferenceField()
93
102
94
103
95
- class CellTower (Document ):
104
+ class CellTower (mongoengine . Document ):
96
105
97
106
meta = {
98
107
'collection' : 'test_cell_tower' ,
@@ -105,49 +114,51 @@ class CellTower(Document):
105
114
class Child (Parent ):
106
115
107
116
meta = {'collection' : 'test_child' }
108
- baz = StringField ()
109
- loc = PointField ()
117
+ baz = mongoengine . StringField ()
118
+ loc = mongoengine . PointField ()
110
119
111
120
112
- class ProfessorMetadata (EmbeddedDocument ):
121
+ class ProfessorMetadata (mongoengine . EmbeddedDocument ):
113
122
114
123
meta = {'collection' : 'test_professor_metadata' }
115
- id = StringField (primary_key = False )
116
- first_name = StringField ()
117
- last_name = StringField ()
118
- departments = ListField (StringField ())
124
+ id = mongoengine . StringField (primary_key = False )
125
+ first_name = mongoengine . StringField ()
126
+ last_name = mongoengine . StringField ()
127
+ departments = mongoengine . ListField (mongoengine . StringField ())
119
128
120
129
121
- class ProfessorVector (Document ):
130
+ class ProfessorVector (mongoengine . Document ):
122
131
123
132
meta = {'collection' : 'test_professor_vector' }
124
- vec = ListField (FloatField ())
125
- metadata = EmbeddedDocumentField (ProfessorMetadata )
133
+ vec = mongoengine . ListField (mongoengine . FloatField ())
134
+ metadata = mongoengine . EmbeddedDocumentField (ProfessorMetadata )
126
135
127
136
128
- class ParentWithRelationship (Document ):
137
+ class ParentWithRelationship (mongoengine . Document ):
129
138
130
139
meta = {'collection' : 'test_parent_reference' }
131
- before_child = ListField (ReferenceField ("ChildRegisteredBefore" ))
132
- after_child = ListField (ReferenceField ("ChildRegisteredAfter" ))
133
- name = StringField ()
140
+ before_child = mongoengine .ListField (
141
+ mongoengine .ReferenceField ('ChildRegisteredBefore' ))
142
+ after_child = mongoengine .ListField (
143
+ mongoengine .ReferenceField ('ChildRegisteredAfter' ))
144
+ name = mongoengine .StringField ()
134
145
135
146
136
- class ChildRegisteredBefore (Document ):
147
+ class ChildRegisteredBefore (mongoengine . Document ):
137
148
138
149
meta = {'collection' : 'test_child_before_reference' }
139
- parent = ReferenceField (ParentWithRelationship )
140
- name = StringField ()
150
+ parent = mongoengine . ReferenceField (ParentWithRelationship )
151
+ name = mongoengine . StringField ()
141
152
142
153
143
- class ChildRegisteredAfter (Document ):
154
+ class ChildRegisteredAfter (mongoengine . Document ):
144
155
145
156
meta = {'collection' : 'test_child_after_reference' }
146
- parent = ReferenceField (ParentWithRelationship )
147
- name = StringField ()
157
+ parent = mongoengine . ReferenceField (ParentWithRelationship )
158
+ name = mongoengine . StringField ()
148
159
149
160
150
- class ErroneousModel (Document ):
161
+ class ErroneousModel (mongoengine . Document ):
151
162
meta = {'collection' : 'test_colliding_objects_model' }
152
163
153
- objects = ListField (StringField ())
164
+ objects = mongoengine . ListField (mongoengine . StringField ())
0 commit comments