Данный модуль содержит готовые модели pydantic для частых задач.
установка
pip install pydantic-extra
smtp_host- хостsmtp_port- порт (по умолчанию: 465)smtp_ssl- использовать ssl (по умолчанию: True)smtp_login/smtp_password- данные для авторизацииfrom_addr- имя отправителя (по умолчанию:smtp_login)
Требует дополнительные зависимости db (sqlalchemy)
pip install pydantic-extra[db]
type-sqlitepath- путь до БД
type-anystr- строка подключения для sqlalchemy
type-mysqlилиmariadbhost- хостport- порт (по умолчанию: 3306)login/password- данные для авторизацииencoding- кодировка (по умолчанию:utf8mb4)database- имя БД
connect_str()- возвращает строку подключения для sqlalchemy или sqlalchemy.URLsetup()- настраивает sqlalchemy для работы с данным диалектом
from pydantic import BaseModel, Field
from pydantic_extra.db import T_DB
class ExampleConfig(BaseModel):
db: T_DB = Field(discriminator='type')С базой данной SQLite по умолчанию
from pathlib import Path
from pydantic import BaseModel, Field
from pydantic_extra.db import T_DB, SQLite
class ExampleConfig(BaseModel):
db: T_DB = Field(SQLite(type="sqlite", path=Path('example.sqlite')), discriminator='type')