mirror of
https://github.com/th3r00t/pyShelf.git
synced 2026-04-28 01:59:35 -04:00
Setup to handle book objects from sqlalchemy.
This commit is contained in:
24
src/backend/lib/storage.py
vendored
24
src/backend/lib/storage.py
vendored
@@ -164,3 +164,27 @@ class Storage:
|
||||
f"Collection {_s} failed: {e}")
|
||||
_collections.append(_p)
|
||||
self.config.logger.info("Finished making collections.")
|
||||
|
||||
def get_books(self, collection=None):
|
||||
"""Get books from database.
|
||||
|
||||
Parameters
|
||||
----------
|
||||
collection : str
|
||||
Collection to filter by.
|
||||
|
||||
Returns
|
||||
-------
|
||||
_result : ScalarResult Object
|
||||
"""
|
||||
session = Session(self.engine)
|
||||
if collection:
|
||||
_result = session.execute(
|
||||
select(Book).join(Collection).where(
|
||||
Collection.collection == collection
|
||||
)
|
||||
).all()
|
||||
else:
|
||||
_result = session.execute(select(Book)).all()
|
||||
session.close()
|
||||
return _result
|
||||
|
||||
Reference in New Issue
Block a user