Skip to content
Snippets Groups Projects
Commit 7860c735 authored by Anton Gusev's avatar Anton Gusev
Browse files

added error handling if row exists in db for BookConnector

parent 5fa5ff0b
No related branches found
No related tags found
2 merge requests!5Develop,!4Develop
from ..Connector import Connector from ..Connector import Connector
from ..models.Book import Book from ..models.Book import Book
from sqlalchemy.exc import IntegrityError
import logging
class BookConnector(Connector): class BookConnector(Connector):
def save_book(self, item): def save_book(self, item):
...@@ -10,5 +11,13 @@ class BookConnector(Connector): ...@@ -10,5 +11,13 @@ class BookConnector(Connector):
book.update(item) book.update(item)
book.image_path = item['images'][0]['path'] book.image_path = item['images'][0]['path']
session.add(book) try:
session.commit() session.add(book)
\ No newline at end of file session.commit()
except IntegrityError:
logging.debug('Duplicate exist')
session.rollback()
session.query(Book).filter(Book.upc == book.upc).update({k:v for k, v in book.__dict__.items() if k in book.__table__.columns.keys()})
session.commit()
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment