Coverage for docs_src / overview.py: 100%
22 statements
« prev ^ index » next coverage.py v7.12.0, created at 2025-12-07 08:37 +0000
« prev ^ index » next coverage.py v7.12.0, created at 2025-12-07 08:37 +0000
1import os 1abcdef
2from typing import Optional 1abcdef
4from mongodb_odm import ASCENDING, Document, IndexModel, connect 1abcdef
7class Player(Document): 1abcdef
8 name: str 1abcdef
9 country_code: str 1abcdef
10 rating: Optional[int] = None 1abcdef
12 class ODMConfig(Document.ODMConfig): 1abcdef
13 indexes = [ 1abcdef
14 IndexModel([("rating", ASCENDING)]),
15 ]
18connect(os.environ.get("MONGO_URL", "mongodb://localhost:27017/testdb")) 1abcdef
20pele = Player(name="Pelé", country_code="BRA").create() 1abcdef
21maradona = Player(name="Diego Maradona", country_code="ARG", rating=97).create() 1abcdef
22zidane = Player(name="Zinedine Zidane", country_code="FRA", rating=96).create() 1abcdef
24for player in Player.find(): 1abcdef
25 print(player) 1abcdef
27player = Player.find_one({Player.name: "Pelé"}) 1abcdef
28if player: 1abcdef
29 player.rating = 98 # potential 1abcdef
30 player.update() 1abcdef
32player = Player.find_one({Player.name: "Pelé"}) 1abcdef
33if player: 1abcdef
34 player.delete() 1abcdef