def create(self): request = self.request form = self.bake_form(self.formClass(request.POST)) _object = self.modelClass() message = None if request.method == 'POST': if form.validate(): self.populate_model(form, _object) with transaction.manager: try: DBSession.add(_object) except SQLAlchemyError: message = SQLERROR_MESSAGE else: message = UPDATED_MESSAGE else: message = FORMERRORS_MESSAGE _dict = { 'form' : form, 'save_url' : request.resource_url(request.root, self.baseUrl , 'create'), 'message' : message, 'user' : authenticated_userid(request) } return self.bake_dict(_dict)
def setUp(self): self.config = testing.setUp() from sqlalchemy import create_engine engine = create_engine('sqlite://') from .models import ( Base, MyModel, ) DBSession.configure(bind=engine) Base.metadata.create_all(engine) with transaction.manager: model = MyModel(name='one', value=55) DBSession.add(model)