File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change 22from pydantic import BaseModel
33from fastapi .middleware .cors import CORSMiddleware
44
5+ from models import CreateCamera
56
67class URL (BaseModel ):
7- port : int
8+ port : str
89 host : str
910
1011class PublicAPI :
@@ -44,3 +45,7 @@ def get_health():
4445 @self .app .get ("/version" )
4546 def get_version ():
4647 return {"api_version" : self .version }
48+
49+ @self .app .post ("/cameras/new" )
50+ def create_new_camera (new_camera : CreateCamera ):
51+ return {"Test" }
Original file line number Diff line number Diff line change 1+ from pydantic import BaseModel , field_validator
2+
3+ class CreateCamera (BaseModel ):
4+ title : str
5+ latitude : float
6+ longitude : float
7+
8+ @field_validator ('title' )
9+ @classmethod
10+ def validate_title (cls , title ):
11+ if len (title ) < 1 or len (title ) > 200 :
12+ raise ValueError (f"Invalid camera title" )
13+ return title
14+
15+ @field_validator ('latitude' )
16+ @classmethod
17+ def validate_latitude (cls , latitude ):
18+ if latitude > 90 or latitude < - 90 :
19+ raise ValueError ("Invalid latitude value" )
20+ return latitude
21+
22+ @field_validator ('longitude' )
23+ @classmethod
24+ def validate_latitude (cls , longitude ):
25+ if longitude > 90 or longitude < - 90 :
26+ raise ValueError ("Invalid longitude value" )
27+ return longitude
Original file line number Diff line number Diff line change @@ -102,7 +102,6 @@ def check_connection(self) -> bool:
102102 """Проверить соединение с базой данных"""
103103 try :
104104 with self .get_session () as session :
105- # Простой запрос для проверки соединения
106105 session .execute (text ("SELECT 1" ))
107106 return True
108107 except SQLAlchemyError as e :
You can’t perform that action at this time.
0 commit comments