कस्टम मॉडल वेलिडेटर
आपके पास इन्वेंटरी अपडेट करने के लिए एक API है और आपसे कहा गया है कि जब नेगेटिव quantity इनपुट हो तो यूज़र-फ्रेंडली error मैसेज दिखाएँ.
RequestValidationError exception आपके लिए पहले से लोड किया गया है.
यह अभ्यास पाठ्यक्रम का हिस्सा है
FastAPI के साथ प्रोडक्शन में AI डिप्लॉय करना
अभ्यास निर्देश
- कस्टम मॉडल वैलिडेशन के लिए एनोटेशन इम्पोर्ट करें.
- ऐसा कस्टम मॉडल वैलिडेशन लागू करें जो डिफॉल्ट मॉडल वैलिडेशंस के
"after"चले. - वैलिडेशन errors को API यूज़र तक पहुँचाने के लिए
RequestValidationErrorexception रेज़ करें.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
# Import annotation for custom validation
from pydantic import BaseModel, ____
class InventoryRecord(BaseModel):
name: str
quantity: int
# Create custom validator that runs after default validation
@model_validator(mode="____")
def validate_after(self):
if len(self.quantity) < 0:
# Raise request validation error
raise ____(
"Negative quantity is not allowed!"
)
return self