def setUp(self): from pyramid.config import Configurator import pyramid_sqla self.engine = pyramid_sqla.add_engine(url='sqlite://') self.session = pyramid_sqla.get_session()() self.config = Configurator(autocommit=True) self.config.begin()
import logging import pyramid_sqla as psa import sqlalchemy as sa import sqlalchemy.orm as orm import transaction import hashlib import urllib from pylonshq.lib.sqlalchemy_ext import FromCache, RelationshipCache, CachingQuery from beaker.cache import cache_region log = logging.getLogger(__name__) Base = psa.get_base() Session = psa.get_session() Session.configure(extension=[psa._zte], query_cls=CachingQuery) class BaseModel(object): @classmethod def _get_keys(cls): """ return column names for this model """ return orm.class_mapper(cls).c.keys() def get_dict(self): """ return dict with keys and values corresponding to this model data """ d = {} for k in self._get_keys(): d[k] = getattr(self, k) return d