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

1import os 1abcdef

2from typing import Optional 1abcdef

3 

4from mongodb_odm import ASCENDING, Document, IndexModel, connect 1abcdef

5 

6 

7class Player(Document): 1abcdef

8 name: str 1abcdef

9 country_code: str 1abcdef

10 rating: Optional[int] = None 1abcdef

11 

12 class ODMConfig(Document.ODMConfig): 1abcdef

13 indexes = [ 1abcdef

14 IndexModel([("rating", ASCENDING)]), 

15 ] 

16 

17 

18connect(os.environ.get("MONGO_URL", "mongodb://localhost:27017/testdb")) 1abcdef

19 

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

23 

24for player in Player.find(): 1abcdef

25 print(player) 1abcdef

26 

27player = Player.find_one({Player.name: "Pelé"}) 1abcdef

28if player: 1abcdef

29 player.rating = 98 # potential 1abcdef

30 player.update() 1abcdef

31 

32player = Player.find_one({Player.name: "Pelé"}) 1abcdef

33if player: 1abcdef

34 player.delete() 1abcdef