Skip to content
Snippets Groups Projects
AltBookConnector.py 869 B
Newer Older
from ..AltConnector import AltConnector
from database.models.Book import Book
from datetime import datetime

class AltBookConnector(AltConnector):
    def save_book(self, item):
        conn = self.get_connection()
        cursor = conn.cursor()

        # filter item keys in table field
        real_keys = Book.__table__.columns.keys()
        real_field = {k: v for k, v in item.items() if k in real_keys}
        real_field.update({
            'image_path': item['images'][0]['path'],
            'created_at': datetime.utcnow(),
            'updated_at': datetime.utcnow(),
        })  # TODO

        sql = 'INSERT INTO books({keys}) VALUES({values}) ;'.format(
            keys=', '.join(real_field.keys()),
            values=', '.join(list('%s' for key in real_field.keys()))
        )

        cursor.execute(sql, real_field.values())
        conn.commit()