fastapi-toolsets 0.4.0__py3-none-any.whl → 0.4.1__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.
@@ -21,4 +21,4 @@ Example usage:
21
21
  return Response(data={"user": user.username}, message="Success")
22
22
  """
23
23
 
24
- __version__ = "0.4.0"
24
+ __version__ = "0.4.1"
@@ -129,11 +129,12 @@ def build_search_filters(
129
129
  else:
130
130
  column = field
131
131
 
132
- # Build the filter
132
+ # Build the filter (cast to String for non-text columns)
133
+ column_as_string = column.cast(String)
133
134
  if config.case_sensitive:
134
- filters.append(column.like(f"%{query}%"))
135
+ filters.append(column_as_string.like(f"%{query}%"))
135
136
  else:
136
- filters.append(column.ilike(f"%{query}%"))
137
+ filters.append(column_as_string.ilike(f"%{query}%"))
137
138
 
138
139
  if not filters:
139
140
  return [], []
@@ -1,4 +1,5 @@
1
1
  from .exceptions import (
2
+ ApiError,
2
3
  ApiException,
3
4
  ConflictError,
4
5
  ForbiddenError,
@@ -10,11 +11,12 @@ from .exceptions import (
10
11
  from .handler import init_exceptions_handlers
11
12
 
12
13
  __all__ = [
13
- "init_exceptions_handlers",
14
- "generate_error_responses",
14
+ "ApiError",
15
15
  "ApiException",
16
16
  "ConflictError",
17
17
  "ForbiddenError",
18
+ "generate_error_responses",
19
+ "init_exceptions_handlers",
18
20
  "NoSearchableFieldsError",
19
21
  "NotFoundError",
20
22
  "UnauthorizedError",
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: fastapi-toolsets
3
- Version: 0.4.0
3
+ Version: 0.4.1
4
4
  Summary: Reusable tools for FastAPI: async CRUD, fixtures, CLI, and standardized responses for SQLAlchemy + PostgreSQL
5
5
  Keywords: fastapi,sqlalchemy,postgresql
6
6
  Author: d3vyce
@@ -1,13 +1,13 @@
1
- fastapi_toolsets/__init__.py,sha256=gzOvHPBZ5Kdja8XWMQM-zTxHKPJ7M7ptud7tUsd9bws,820
1
+ fastapi_toolsets/__init__.py,sha256=qKGIJSOjkUhVh7srxc5HEgnF7CGkcsnN9wFEdNEn798,820
2
2
  fastapi_toolsets/cli/__init__.py,sha256=QAcrenphE7D5toid_Kn777Cy1icSOWiEBjSE_oCuU4o,111
3
3
  fastapi_toolsets/cli/app.py,sha256=G3y3PNN3biHs8GtiiGsrX2X8nXNjkrsUhHLXQo2-MXc,2588
4
4
  fastapi_toolsets/cli/commands/__init__.py,sha256=BogehmsY6olwLdfIBzviuppXP1LLl9znnxtmji3eLwI,29
5
5
  fastapi_toolsets/cli/commands/fixtures.py,sha256=qiC2dcrJ_Rb1PRzx6EycTFQQXwa_GQUVoptpx4chf9k,6679
6
6
  fastapi_toolsets/crud/__init__.py,sha256=LRR57jsFna2IqSj6aTomMzFcaQbx7WVo5lnfhcTSU1g,369
7
7
  fastapi_toolsets/crud/factory.py,sha256=c5aH2c38Qa44pQ3XKoJTcRox5x4rD4tuEJQ5DKFjSnc,13014
8
- fastapi_toolsets/crud/search.py,sha256=a46SGMg484uv2DruNfEB-Rq6lJRi_K-Nr8tFTWQ2ouY,4530
8
+ fastapi_toolsets/crud/search.py,sha256=OAhbkuDan-elAWyAUz0msieZxYkE76fpJYwaA1BRTQ8,4635
9
9
  fastapi_toolsets/db.py,sha256=YUj5CrxCnREg7AqpJLNrLR2RDIOCS7stQCNOSS3cRho,5619
10
- fastapi_toolsets/exceptions/__init__.py,sha256=wlV4pVXuGdOtUvlThRJXmEc8g8Nmwt8MOMG_A-3j9zw,451
10
+ fastapi_toolsets/exceptions/__init__.py,sha256=vNP19B7aaVKnBpRXG_fdCZ0P_GlPDiZDYydPLxfdhD0,481
11
11
  fastapi_toolsets/exceptions/exceptions.py,sha256=hu8_lvE9KmnYID9YgJqlzZMkCD0kASPrGAmN1hUe2bY,5086
12
12
  fastapi_toolsets/exceptions/handler.py,sha256=IXfKiIr_LPo-11PRpOIrNRAXBkeQ5TdLcu3Gy-r6ChU,5916
13
13
  fastapi_toolsets/fixtures/__init__.py,sha256=i5N6dt4LLVxhC0fBNhDTokuqUf43oXJChBkVMQ94hLA,328
@@ -19,8 +19,8 @@ fastapi_toolsets/pytest/__init__.py,sha256=0GnnFxWNfpaShBBYsfRGIgSygwC1eo8TydmXC
19
19
  fastapi_toolsets/pytest/plugin.py,sha256=lbEiumS2zi7jARY6eYBUPAlfKCplbLFrZXcmp0-RkcA,6892
20
20
  fastapi_toolsets/pytest/utils.py,sha256=VqkxtbpEU8w7-0xfcZG0m8Tpn3LtdnvAJMyqWS7WtIw,3447
21
21
  fastapi_toolsets/schemas.py,sha256=LBzrq4s5VWYeQqlUfOEvWDtpFdO8scgY0LRypk9KUAE,2639
22
- fastapi_toolsets-0.4.0.dist-info/licenses/LICENSE,sha256=V2jCjI-VPB-veGY2Ktb0sU4vT_TldRciZ9lCE98bMoE,1063
23
- fastapi_toolsets-0.4.0.dist-info/WHEEL,sha256=e_m4S054HL0hyR3CpOk-b7Q7fDX6BuFkgL5OjAExXas,80
24
- fastapi_toolsets-0.4.0.dist-info/entry_points.txt,sha256=pNU38Nn_DXBgYd-nLZCizMvrrdaPhHmkRwouDoBqvzw,63
25
- fastapi_toolsets-0.4.0.dist-info/METADATA,sha256=cRTaYwgiAEVdU_DD4lG7idF6agtcxgSHpFsFIwp-7HY,4221
26
- fastapi_toolsets-0.4.0.dist-info/RECORD,,
22
+ fastapi_toolsets-0.4.1.dist-info/licenses/LICENSE,sha256=V2jCjI-VPB-veGY2Ktb0sU4vT_TldRciZ9lCE98bMoE,1063
23
+ fastapi_toolsets-0.4.1.dist-info/WHEEL,sha256=e_m4S054HL0hyR3CpOk-b7Q7fDX6BuFkgL5OjAExXas,80
24
+ fastapi_toolsets-0.4.1.dist-info/entry_points.txt,sha256=pNU38Nn_DXBgYd-nLZCizMvrrdaPhHmkRwouDoBqvzw,63
25
+ fastapi_toolsets-0.4.1.dist-info/METADATA,sha256=dcOHzdf8-TXvRev1fJCAtj5gxj4LSJ4IXlGVBIaChaE,4221
26
+ fastapi_toolsets-0.4.1.dist-info/RECORD,,