Base¶

class database.service.base.BaseService(model=typing.Type[sqlalchemy.orm.decl_api.Base])¶

Base class for database services

Parameters:

model – Database model

create(db: Session, obj_in: BaseModel)¶

Create a new object in the database

Parameters:
  • db (Session) – Database session

  • obj_in – Pydantic schema

Returns:

Database object

Return type:

Base

create_all(db: Session, objs_in: BaseModel)¶

Create multiple objects in the database

Parameters:
  • db (Session) – Database session

  • objs_in – Pydantic schema with list of objects to create

Returns:

List of database objects

Return type:

list[Base]

get(db: Session, id_: int)¶

Get an object by id

Parameters:
  • db (Session) – Database session

  • id (int) – Object id

Returns:

Database object

Return type:

Base

update(db: Session, db_obj: Base, obj_in: BaseModel)¶

Update a database object

Parameters:
  • db (Session) – Database session

  • db_obj (Base) – Database object

  • obj_in (BaseModel) – Pydantic schema

Returns:

Updated database object

Return type:

Base

delete(db: Session, id_: int)¶

Delete an object by id

Parameters:
  • db (Session) – Database session

  • id (int) – Object id

Returns:

Deleted database object

Return type:

Base

delete_all(db: Session, ids: list[int])¶

Delete multiple objects by id

Parameters:
  • db (Session) – Database session

  • ids (list[int]) – List of object ids

Returns:

List of deleted database objects

Return type:

list[Base]