Newer
Older
from ..Connector import Connector
from ..models.Book import Book
from sqlalchemy.exc import IntegrityError
import logging
class BookConnector(Connector):
def save_book(self, item):
session = self.get_session()
book = Book()
book.update(item)
book.image_path = item['images'][0]['path']
try:
session.add(book)
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()