Код: Выделить всё
from pydantic_settings import BaseSettings
from pydantic import Field, field_validator
from typing import Tuple
class JobSettings(BaseSettings):
wp_generate_funnel_box: bool = Field(True)
wp_funnel_box_dims_mm: Tuple[int, int, int] = Field((380, 90, 380))
@field_validator('wp_funnel_box_dims_mm', mode='before')
@classmethod
def parse_int_tuple(cls, v) -> tuple[int, int, int]:
output = tuple(int(x.strip()) for x in v.split(','))
assert len(output) == 3
return output
model_config = {
"env_file": ".env",
"env_file_encoding": "utf-8",
"extra": "ignore",
}
Код: Выделить всё
wp_generate_funnel_box="True"
wp_funnel_box_dims_mm="380, 90, 380"
Код: Выделить всё
SettingsError: error parsing value for field "wp_funnel_box_dims_mm" from source "DotEnvSettingsSource"
Подробнее здесь: https://stackoverflow.com/questions/788 ... s-properly