Look in DB for book first

This commit is contained in:
2024-01-21 00:31:07 -05:00
parent c3ddd01a6f
commit 45ddce36aa

View File

@ -269,11 +269,14 @@ class Book(LongPlayScrobblableMixin):
@classmethod
def find_or_create(cls, lookup_id: str, author: str = "") -> "Book":
data = lookup_book_from_openlibrary(lookup_id, author)
book = cls.objects.filter(openlibrary_id=lookup_id).first()
book, book_created = cls.objects.get_or_create(isbn=data["isbn"])
if book_created:
book.fix_metadata(data=data)
if not book:
data = lookup_book_from_openlibrary(lookup_id, author)
book, book_created = cls.objects.get_or_create(isbn=data["isbn"])
if book_created:
book.fix_metadata(data=data)
return book