From 053eefe939194412098738588f8662181fd596e7 Mon Sep 17 00:00:00 2001 From: Gabriel De Los Rios Date: Mon, 9 Dec 2024 23:22:02 -0300 Subject: [PATCH] feat(pets): adds validator for pet id --- app/utils/validators/pet_validators.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/app/utils/validators/pet_validators.py b/app/utils/validators/pet_validators.py index ab49d01..ea78ab9 100644 --- a/app/utils/validators/pet_validators.py +++ b/app/utils/validators/pet_validators.py @@ -1,4 +1,5 @@ from app.extensions import db +from app.models.pet import Pet from app.models.pet_kind import PetKind from app.utils.errors.pets.pet_register_errors import PetRegisterError from app.utils.helpers import pet_sex_id_to_str @@ -63,4 +64,14 @@ class PetValidators: if location is not None: if Validators.is_valid_str_and_pattern(location,'^[A-Za-z ]{2,255}$'): return location - raise PetRegisterError("Invalid location") \ No newline at end of file + raise PetRegisterError("Invalid location") + + @staticmethod + def is_valid_pet_id(id: str | None): + if id is None: + return None + try: + int(id) + except: + return None + return db.session.execute(db.select(Pet).filter_by(id=id)).one_or_none() \ No newline at end of file