from sqlalchemy import Integer, Column, String from app import db # noqa from .interface import WidgetInterface class Widget(db.Model): # type: ignore '''A snazzy Widget''' __tablename__ = 'widget' widget_id = Column(Integer(), primary_key=True) name = Column(String(255)) purpose = Column(String(255)) def update(self, changes: WidgetInterface): for key, val in changes.items(): setattr(self, key, val) return self