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
38import asyncio
import mongox
client = mongox.Client(
"mongodb://localhost:27017", get_event_loop=asyncio.get_running_loop
)
db = client.get_database("test_db")
class Genre(mongox.EmbeddedModel):
name: str = mongox.Field(min_length=5)
class Movie(mongox.Model, db=db, collection="movies"):
name: str
genre: Genre
async def main():
genre = Genre(name="Action")
await Movie(name="Saving Private Ryan", genre=genre).insert()
movie = await Movie.query(Movie.genre.name == "Action").get()
print(movie)
movie.genre.name = "History"
movie = await movie.save()
print(movie)
await movie.delete()
asyncio.run(main())