diff -r 48c70425bf6c -r 351a02310dd8 iro/model/decorators.py --- a/iro/model/decorators.py Fri Jan 27 21:14:18 2012 +0100 +++ b/iro/model/decorators.py Fri Jan 27 21:21:41 2012 +0100 @@ -1,10 +1,25 @@ from decorator import decorator -from .utils import DBDefer from .user import vUser +from .dbdefer import dbdefer +from .pool import runInDBPool +from .schema import Offer + +from ..error import ValidateException def vRoute(typ): @decorator def wrapper(f, *args, **kwargs): return f(*args, **kwargs) return wrapper + +from .utils import WithSession +#@dbdefer +def vTyp(value,field): + with WithSession(dbdefer.engine) as session: + for typ in session.query(Offer.typ).distinct(): + if value == typ[0]: + break + else: + raise ValidateException(field=field,msg='Typ is not valid.') + return value