Compare commits

..

4 Commits
1.2.2 ... 1.2.5

4 changed files with 56 additions and 46 deletions

View File

@@ -2,7 +2,15 @@
All notable changes to this project will be documented in this file. All notable changes to this project will be documented in this file.
## 1.2.X ## 1.2.4
- Enabled newer versions for all dependencies
## 1.2.3
- Added option to specify lookup_column for get_object_or_404
## 1.2.2
- Added order_by method - Added order_by method

View File

@@ -10,8 +10,10 @@ from .models.base import Base
T = TypeVar("T", bound=Base) T = TypeVar("T", bound=Base)
def get_object_or_404(db_class: Type[T], id: UUID | str, db: Session, expunge: bool = False) -> T: def get_object_or_404(
obj = db.query(db_class).filter(db_class.id == id).one_or_none() db_class: Type[T], id: UUID | str, db: Session, expunge: bool = False, lookup_column: str = "id"
) -> T:
obj = db.query(db_class).filter(getattr(db_class, lookup_column) == id).one_or_none()
if obj is None: if obj is None:
raise HTTPException(status_code=404, detail="The object does not exist.") raise HTTPException(status_code=404, detail="The object does not exist.")
if expunge: if expunge:

View File

@@ -1,27 +1,27 @@
certifi==2024.2.2 certifi>=2024.2.2
charset-normalizer==3.3.2 charset-normalizer>=3.3.2
docutils==0.20.1 docutils>=0.20.1
idna==3.6 idna>=3.6
importlib_metadata==7.1.0 importlib_metadata>=7.1.0
jaraco.classes==3.4.0 jaraco.classes>=3.4.0
jaraco.context==4.3.0 jaraco.context>=4.3.0
jaraco.functools==4.0.0 jaraco.functools>=4.0.0
keyring==25.0.0 keyring>=25.0.0
markdown-it-py==3.0.0 markdown-it-py>=3.0.0
mdurl==0.1.2 mdurl>=0.1.2
more-itertools==10.2.0 more-itertools>=10.2.0
nh3==0.2.17 nh3>=0.2.17
pkginfo==1.10.0 pkginfo>=1.10.0
Pygments==2.17.2 Pygments>=2.17.2
readme_renderer==43.0 readme_renderer>=43.0
requests==2.31.0 requests>=2.31.0
requests-toolbelt==1.0.0 requests-toolbelt>=1.0.0
rfc3986==2.0.0 rfc3986>=2.0.0
rich==13.7.1 rich>=13.7.1
setuptools==69.2.0 setuptools>=69.2.0
twine==5.0.0 twine>=5.0.0
urllib3==2.2.1 urllib3>=2.2.1
wheel==0.43.0 wheel>=0.43.0
zipp==3.18.1 zipp>=3.18.1
-r requirements.txt -r requirements.txt

View File

@@ -1,23 +1,23 @@
annotated-types==0.6.0 # Pydantic annotated-types>=0.7.0 # Pydantic
pydantic==2.6.4 # Pydantic pydantic>=2.8.2 # Pydantic
pydantic-core==2.16.3 # Pydantic pydantic-core>=2.20.1 # Pydantic
typing-extensions==4.10.0 # Pydantic typing-extensions>=4.12.2 # Pydantic
anyio==4.3.0 # FastAPI anyio>=4.4.0 # FastAPI
fastapi==0.110.1 # FastAPI fastapi>=0.111.0 # FastAPI
idna==3.6 # FastAPI idna>=3.7 # FastAPI
sniffio==1.3.1 # FastAPI sniffio>=1.3.1 # FastAPI
starlette==0.37.2 # FastAPI starlette>=0.37.2 # FastAPI
fastapi-pagination==0.12.21 # Pagination fastapi-pagination>=0.12.26 # Pagination
sqlalchemy==2.0.29 # SQLAlchemy sqlalchemy>=2.0.31 # SQLAlchemy
python-dotenv==1.0.1 # Environment variables python-dotenv>=1.0.1 # Environment variables
psycopg==3.1.18 # PostgreSQL psycopg>=3.2.1 # PostgreSQL
psycopg-binary==3.1.18 # PostgreSQL psycopg-binary>=3.2.1 # PostgreSQL
psycopg-pool==3.2.1 # PostgreSQL psycopg-pool>=3.2.2 # PostgreSQL
h11==0.14.0 # Testing h11>=0.14.0 # Testing
httpcore==1.0.5 # Testing httpcore>=1.0.5 # Testing
httpx==0.27.0 # Testing httpx>=0.27.0 # Testing