models: fixed pydantic deprecation warning

This commit is contained in:
2026-04-23 07:56:27 +02:00
parent 833416b5e0
commit 9aaa664c44
+4 -7
View File
@@ -3,7 +3,7 @@ import re
from enum import Enum
from typing import Annotated, Literal, Tuple, List, Optional
from dataclasses import dataclass
from pydantic import BaseModel, Field, field_validator, AfterValidator
from pydantic import BaseModel, Field, field_validator, AfterValidator, ConfigDict
from aare.common.coordinate import Coordinate, positive_coords
from aare.common.diffraction_geometry import DiffractionGeometry
@@ -53,6 +53,8 @@ class PuckLoadedInfo(BaseModel):
class DataCollectionParameters(BaseModel):
model_config = ConfigDict(from_attributes=True)
directory: Optional[str] = None
oscillation: Optional[float] = None # Only accept positive float
exposure: Optional[float] = None # Only accept positive floats between 0 and 1
@@ -82,12 +84,7 @@ class DataCollectionParameters(BaseModel):
def to_dict(self):
"""Convert the model instance to a dictionary."""
return self.dict(
exclude_unset=True
) # Use this built-in method for serialization
class Config:
from_attributes = True
return self.model_dump(exclude_unset=True)
@field_validator("directory", mode="after")
@classmethod