1+ # start-models
2+ from django .db import models
3+
4+ class Movie (models .Model ):
5+ title = models .CharField (max_length = 200 )
6+ plot = models .TextField (blank = True )
7+ runtime = models .IntegerField (default = 0 )
8+ released = models .DateTimeField ("release date" , null = True , blank = True )
9+
10+ class Meta :
11+ db_table = "movies"
12+ managed = False
13+
14+ def __str__ (self ):
15+ return self .title
16+ # end-models
17+
18+ # start-json-field
19+ from django .db import models
20+
21+ class Movie (models .Model ):
22+ title = models .CharField (max_length = 200 )
23+ plot = models .TextField (blank = True )
24+ runtime = models .IntegerField (default = 0 )
25+ released = models .DateTimeField ("release date" , null = True , blank = True )
26+ imdb = models .JSONField (null = True , blank = True )
27+
28+ class Meta :
29+ db_table = "movies"
30+ managed = False
31+
32+ def __str__ (self ):
33+ return self .title
34+ # end-json-field
35+
36+ # start-array-field
37+ from django .db import models
38+ from django_mongodb_backend .fields import ArrayField
39+
40+ class Movie (models .Model ):
41+ title = models .CharField (max_length = 200 )
42+ plot = models .TextField (blank = True )
43+ runtime = models .IntegerField (default = 0 )
44+ released = models .DateTimeField ("release date" , null = True , blank = True )
45+ genres = ArrayField (
46+ models .CharField (max_length = 100 ),
47+ size = 5 ,
48+ null = True ,
49+ blank = True )
50+
51+ class Meta :
52+ db_table = "movies"
53+ managed = False
54+
55+ def __str__ (self ):
56+ return self .title
57+ # end-array-field
58+
59+ # start-embedded-field
60+ from django .db import models
61+ from django_mongodb_backend .models import EmbeddedModel
62+ from django_mongodb_backend .fields import EmbeddedModelField
63+
64+ class Award (EmbeddedModel ):
65+ wins = models .IntegerField (default = 0 )
66+ nominations = models .IntegerField (default = 0 )
67+ text = models .CharField (max_length = 100 )
68+
69+ class Meta :
70+ managed = False
71+
72+ class Movie (models .Model ):
73+ title = models .CharField (max_length = 200 )
74+ plot = models .TextField (blank = True )
75+ runtime = models .IntegerField (default = 0 )
76+ released = models .DateTimeField ("release date" , null = True , blank = True )
77+ awards = EmbeddedModelField (Award , null = True , blank = True )
78+
79+ class Meta :
80+ db_table = "movies"
81+ managed = False
82+
83+ def __str__ (self ):
84+ return self .title
85+ # end-embedded-field
0 commit comments