__init__.py
851 Bytes
from sqlalchemy.orm import (
sessionmaker,
scoped_session,
)
from sqlalchemy.ext.declarative import declarative_base
import zope.sqlalchemy
session_factory = sessionmaker()
DBSession = scoped_session(session_factory)
zope.sqlalchemy.register(DBSession)
Base = declarative_base()
class CommonModel(object):
def to_dict(self):
values = {}
for column in self.__table__.columns:
values[column.name] = getattr(self, column.name)
return values
def to_dict_without_none(self):
values = {}
for column in self.__table__.columns:
val = getattr(self, column.name)
if val is not None:
values[column.name] = val
return values
def from_dict(self, d):
for key in d:
val = d[key]
setattr(self, key, val)