u-toolkit 0.1.2__py3-none-any.whl → 0.1.3__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- u_toolkit/fastapi/cbv.py +10 -3
- {u_toolkit-0.1.2.dist-info → u_toolkit-0.1.3.dist-info}/METADATA +1 -1
- {u_toolkit-0.1.2.dist-info → u_toolkit-0.1.3.dist-info}/RECORD +5 -5
- {u_toolkit-0.1.2.dist-info → u_toolkit-0.1.3.dist-info}/WHEEL +0 -0
- {u_toolkit-0.1.2.dist-info → u_toolkit-0.1.3.dist-info}/entry_points.txt +0 -0
u_toolkit/fastapi/cbv.py
CHANGED
@@ -24,7 +24,8 @@ class EndpointsClassInterface(Protocol):
|
|
24
24
|
deprecated: bool | None = None
|
25
25
|
|
26
26
|
@classmethod
|
27
|
-
def build_self(cls) -> Self:
|
27
|
+
def build_self(cls) -> Self:
|
28
|
+
return cls()
|
28
29
|
|
29
30
|
|
30
31
|
_T = TypeVar("_T")
|
@@ -68,7 +69,8 @@ class Methods(StrEnum):
|
|
68
69
|
|
69
70
|
|
70
71
|
METHOD_PATTERNS = {
|
71
|
-
method: re.compile(f"^{method}", re.IGNORECASE)
|
72
|
+
method: re.compile(f"^({method}_|{method})", re.IGNORECASE)
|
73
|
+
for method in Methods
|
72
74
|
}
|
73
75
|
|
74
76
|
_FnName = str
|
@@ -107,7 +109,7 @@ def iter_endpoints(cls: type[_T]):
|
|
107
109
|
paths = [prefix]
|
108
110
|
|
109
111
|
if method := get_method(name):
|
110
|
-
path = method[1].sub(
|
112
|
+
path = method[1].sub("", name).replace("__", "/")
|
111
113
|
if path:
|
112
114
|
paths.append(path)
|
113
115
|
|
@@ -136,6 +138,7 @@ def iter_dependencies(cls: type[_T]):
|
|
136
138
|
|
137
139
|
|
138
140
|
_CBVEndpointParamName = Literal[
|
141
|
+
"path",
|
139
142
|
"tags",
|
140
143
|
"dependencies",
|
141
144
|
"responses",
|
@@ -197,6 +200,8 @@ class CBV:
|
|
197
200
|
method
|
198
201
|
]
|
199
202
|
|
203
|
+
path = self._state[cls][method_name].get("path") or path
|
204
|
+
|
200
205
|
return self.router.api_route(
|
201
206
|
path,
|
202
207
|
methods=endpoint_methods,
|
@@ -211,6 +216,7 @@ class CBV:
|
|
211
216
|
def info(
|
212
217
|
self,
|
213
218
|
*,
|
219
|
+
path: str | None = None,
|
214
220
|
methods: list[Methods | LiteralUpperMethods | LiteralLowerMethods]
|
215
221
|
| None = None,
|
216
222
|
tags: list[str | Enum] | None = None,
|
@@ -223,6 +229,7 @@ class CBV:
|
|
223
229
|
state = self._state
|
224
230
|
initial_state = self._initial_state
|
225
231
|
data: dict[_CBVEndpointParamName, Any] = {
|
232
|
+
"path": path,
|
226
233
|
"methods": methods,
|
227
234
|
"tags": tags,
|
228
235
|
"dependencies": dependencies,
|
@@ -11,7 +11,7 @@ u_toolkit/object.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
11
11
|
u_toolkit/path.py,sha256=IkyIHcU9hKBCOZfF30FrKf4CfL-MH91fjeYF9EY7eos,128
|
12
12
|
u_toolkit/signature.py,sha256=wXyGFgb_E68xevYWx7gIy9P5lVZmHUebpf2EGI_fCnw,2167
|
13
13
|
u_toolkit/fastapi/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
14
|
-
u_toolkit/fastapi/cbv.py,sha256=
|
14
|
+
u_toolkit/fastapi/cbv.py,sha256=DDkScAD0ab3ws4rRamy-Fw_TXzbpsCTY99xzzlqfXy8,10225
|
15
15
|
u_toolkit/fastapi/config.py,sha256=kGpokR9XXr1KxMA1GVKYkCdKwqIQAIwOJ-v6sGbqzAQ,267
|
16
16
|
u_toolkit/fastapi/exception.py,sha256=5E4wAJYwp0RJ4SEBVkchOgrgfwCgniQ8Mtg1O5sWUXE,3288
|
17
17
|
u_toolkit/fastapi/helpers.py,sha256=BCMMLxa1c6BMA_rKq-hCi0iyEjrR3Z5rPMeTvgaVJB0,447
|
@@ -30,7 +30,7 @@ u_toolkit/sqlalchemy/type_vars.py,sha256=m2VeV41CBIK_1QX3w2kgz-n556sILAGZ-Kaz3TD
|
|
30
30
|
u_toolkit/sqlalchemy/orm/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
31
31
|
u_toolkit/sqlalchemy/orm/fields.py,sha256=3zoYil23I6YLtc_59aHDt9w5l1NBTkePT9AfXI3DMiY,593
|
32
32
|
u_toolkit/sqlalchemy/orm/models.py,sha256=V8vf4ps3phAmwxyaFYK7pw8Igz7h097o4QBjKB0gwC8,705
|
33
|
-
u_toolkit-0.1.
|
34
|
-
u_toolkit-0.1.
|
35
|
-
u_toolkit-0.1.
|
36
|
-
u_toolkit-0.1.
|
33
|
+
u_toolkit-0.1.3.dist-info/METADATA,sha256=4ibTb4RAFOVw_aJ4Ays4FxrhsjY9IZhpWFIPhkjFcuo,365
|
34
|
+
u_toolkit-0.1.3.dist-info/WHEEL,sha256=qtCwoSJWgHk21S1Kb4ihdzI2rlJ1ZKaIurTj_ngOhyQ,87
|
35
|
+
u_toolkit-0.1.3.dist-info/entry_points.txt,sha256=hTfAYCd5vvRiqgnJk2eBsoRIiIVB9pK8WZm3Q3jjKFU,45
|
36
|
+
u_toolkit-0.1.3.dist-info/RECORD,,
|
File without changes
|
File without changes
|