Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit d70de6c

Browse files
Create imdb-example-w-mongoengine.md
1 parent 67608c0 commit d70de6c

File tree

1 file changed

+72
-0
lines changed

1 file changed

+72
-0
lines changed

‎imdb-example-w-mongoengine.md

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
```
2+
docker run -d -p 27017:27017 --rm --name mongo mongo:3.6.5-jessie
3+
docker exec -it mongo sh
4+
apt update && apt install wget python python-setuptools && easy_install pip -y
5+
wget https://raw.githubusercontent.com/steveren/docs-assets/charts-tutorial/movieDetails.json
6+
pip install pymongo mongoengine
7+
mongoimport --db test --collection movieDetails --drop --file movieDetails.json
8+
```
9+
10+
```
11+
from pymongo import MongoClient
12+
client = MongoClient()
13+
>>> db = client['test']
14+
>>> collection = db['movieDetails']
15+
>>> collection.find_one()
16+
{u'tomato': {u'rating': 9.0, u'userReviews':
17+
```
18+
19+
```
20+
>>> import mongoengine
21+
>>> mongoengine.connect('test', host='mongodb://localhost:27017/test')
22+
>>> class Movie(mongoengine.Document):
23+
... meta = {'collection': 'movieDetails'}
24+
... title = mongoengine.StringField()
25+
... year = mongoengine.IntField()
26+
... rated = mongoengine.StringField()
27+
... runtime = mongoengine.IntField()
28+
... countries = mongoengine.ListField()
29+
... genres = mongoengine.ListField()
30+
... director = mongoengine.StringField()
31+
... writers = mongoengine.ListField()
32+
... actors = mongoengine.ListField()
33+
... plot = mongoengine.StringField()
34+
... poster = mongoengine.StringField()
35+
... imdb = mongoengine.EmbeddedDocumentField(Imdb)
36+
... tomato = mongoengine.EmbeddedDocumentField(Tomato)
37+
... metacritic = mongoengine.IntField()
38+
... awards = mongoengine.EmbeddedDocumentField(Awards)
39+
... type = mongoengine.StringField()
40+
41+
>>> Movie.objects.first()
42+
<Movie: Movie object>
43+
>>> movie.actors
44+
[u'Claudia Cardinale', u'Henry Fonda', u'Jason Robards', u'Charles Bronson']
45+
>>> movie.to_json()
46+
'{"_id": {"$oid": "5b107bec1d2952d0da9046e0"}, "title": "Once Upon a Time
47+
48+
>>> Movie.objects(year__lte=1988)
49+
[<Movie: Movie object>, <Movie:
50+
51+
>>> Movie.objects(year__lte=1988)[0]
52+
<Movie: Movie object>
53+
>>> Movie.objects(year__lte=1988)[0].actors
54+
[u'Claudia Cardinale', u'Henry Fonda', u'Jason Robards', u'Charles Bronson']
55+
>>> Movie.objects(imdb__rating__gte=9)
56+
[<Movie: Movie object>, <Movie: Movie object>,
57+
>>> Movie.objects(imdb__rating__gte=9)[0]
58+
<Movie: Movie object>
59+
>>> Movie.objects(imdb__rating__gte=9)[0].title
60+
u'Gamechangers Ep. 3: A Legend in the Booth'
61+
>>> Movie.objects(title__contains='Love')
62+
[<Movie: Movie object>, <Movie: Movie object>,
63+
>>> [a.title for a in Movie.objects(title__contains='Love')]
64+
[u'Dr. Strangelove or: How I Learne
65+
>>> [a.actors for a in Movie.objects(title__contains='Love') if a.title == 'Shakespeare in Love']
66+
[[u'Geoffrey Rush', u'Tom Wilkinson',
67+
68+
>>> Movie.objects.count()
69+
>>> Movie.objects(actors__size=2)
70+
```
71+
72+
- https://docs.mongodb.com/charts/master/tutorial/movie-details/prereqs-and-import-data/

0 commit comments

Comments
(0)

AltStyle によって変換されたページ (->オリジナル) /