HTTPS SSH

breeze

An integration layer between storm and colander. It let you do things like

class EmployeeSchema(breeze.ModelSchema):
    model = Employee
    name = colander.SchemaNode(colander.String())
    company = colander.SchemaNode(breeze.Refrence(Company))

schema = EmployeeSchema()
appstruct = schema.load(store.get(Employee, 14))

# show the user a edit form, etc, validate it and...

employee = schema.save(appstruct, store)
store.flush()

messages.success('Employee data successfully updated!')
return redirect('/employee/%d' % employee.id)

Or even better

class EmployeeSchema(breeze.ModelSchema):
    model = Employee
    name = colander.SchemaNode(colander.String())

class EmployeeReferenceSetSchema(breeze.ReferenceSetSchema):
    employee = EmployeeSchema()

class CompanySchema(breeze.ModelSchema):
    model = Company
    name = colander.SchemaNode(colander.String())
    employees = EmployeeReferenceSetSchema()

schema = CompanySchema()
appstruct = schema.load(store.get(Company, 2))

# ...a form where the user can add and remove employees from the company

company = schema.save(appstruct, store)
store.flush()