Skip to content

Commit 1a53ee5

Browse files
committed
✨ Make DbParams a dict to allow for extra undoc params
1 parent 7d7a85e commit 1a53ee5

File tree

2 files changed

+6
-18
lines changed

2 files changed

+6
-18
lines changed

src/config/models.py

Lines changed: 3 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33

44
from typing import Any, Literal, overload, override
55

6-
from pydantic import BaseModel, ConfigDict, Field
6+
from pydantic import BaseModel
77

88
type Extension = dict[str, Any]
99

@@ -68,28 +68,16 @@ class UseConfig(BaseModel):
6868
backend: bool = False
6969

7070

71-
class DbParams(BaseModel):
72-
model_config = ConfigDict(serialize_by_alias=True)
73-
minsize: int | None = None
74-
maxsize: int | None = None
75-
max_queries: int | None = None
76-
max_inactive_connection_lifetime: float | None = None
77-
schema_name: str | None = Field(
78-
alias="schema", validation_alias="schema", serialization_alias="schema", default=None
79-
)
80-
ssl: bool | None = None
81-
82-
8371
class DbExtraApp(BaseModel):
8472
url: str | None = None
85-
params: DbParams | None = None
73+
params: dict[str, Any] | None = None
8674
models: list[str] = []
8775

8876

8977
class DbConfig(BaseModel):
9078
url: str
9179
enabled: bool = True
92-
params: DbParams | None = None
80+
params: dict[str, Any] | None = None
9381
extra_apps: dict[str, DbExtraApp] = {}
9482

9583

src/database/config/__init__.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,22 @@
33

44
from collections import defaultdict
55
from logging import getLogger
6+
from typing import Any
67

78
import aerich
89
from tortoise import Tortoise
910

1011
from src.config import config
11-
from src.config.models import DbParams
1212

1313
logger = getLogger("bot").getChild("database")
1414

1515

16-
def apply_params(uri: str, params: DbParams | None) -> str:
16+
def apply_params(uri: str, params: dict[str, Any] | None) -> str:
1717
if params is None:
1818
return uri
1919

2020
first: bool = True
21-
for param, value in params.model_dump().items():
21+
for param, value in params.items():
2222
if value is not None:
2323
uri += f"{'?' if first else '&'}{param}={value}"
2424
first = False

0 commit comments

Comments
 (0)