Данный модуль содержит готовые модели 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
-sqlite
path
- путь до БД
type
-any
str
- строка подключения для sqlalchemy
type
-mysql
илиmariadb
host
- хост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')