def get_sequence_model_admin(model, title=u""): """ Return a schema for configuring sequence of models model The SQLAlchemy model to configure """ node_schema = SQLAlchemySchemaNode( model, widget=deform.widget.MappingWidget(template=TEMPLATES_URL + "clean_mapping.pt", )) node_schema.name = 'data' schema = colander.SchemaNode(colander.Mapping()) schema.add( colander.SchemaNode(colander.Sequence(), node_schema, widget=deform.widget.SequenceWidget( orderable=True, template=TEMPLATES_URL + "clean_sequence.pt", ), title=title, name='datas')) def dictify(models): return {'datas': [node_schema.dictify(model) for model in models]} def objectify(datas): return [node_schema.objectify(data) for data in datas] schema.dictify = dictify schema.objectify = objectify return schema
def get_sequence_model_admin(model, title=u"", excludes=(), **kw): """ Return a schema for configuring sequence of models model The SQLAlchemy model to configure """ node_schema = SQLAlchemySchemaNode( model, widget=CleanMappingWidget(), excludes=excludes, ) node_schema.name = 'data' colanderalchemy_config = getattr(model, '__colanderalchemy_config__', {}) default_widget_options = dict( orderable=True, min_len=1, ) widget_options = colanderalchemy_config.get('seq_widget_options', {}) widget_options.update(kw.get('widget_options', {})) for key, value in widget_options.items(): default_widget_options[key] = value schema = colander.SchemaNode(colander.Mapping()) schema.add( colander.SchemaNode( colander.Sequence(), node_schema, widget=CleanSequenceWidget( **default_widget_options ), title=title, name='datas') ) def dictify(models): return {'datas': [node_schema.dictify(model) for model in models]} def objectify(datas): return [node_schema.objectify(data) for data in datas] schema.dictify = dictify schema.objectify = objectify return schema
def get_sequence_model_admin(model, title=u"", excludes=(), **kw): """ Return a schema for configuring sequence of models model The SQLAlchemy model to configure """ node_schema = SQLAlchemySchemaNode( model, widget=deform.widget.MappingWidget( template=TEMPLATES_URL + "clean_mapping.pt", ), excludes=excludes, ) node_schema.name = 'data' default_widget_options = dict( orderable=True, template=TEMPLATES_URL + "clean_sequence.pt", min_len=1, ) widget_options = kw.get('widget_options', {}) for key, value in widget_options.items(): default_widget_options[key] = value schema = colander.SchemaNode(colander.Mapping()) schema.add( colander.SchemaNode( colander.Sequence(), node_schema, widget=deform.widget.SequenceWidget( **default_widget_options ), title=title, name='datas') ) def dictify(models): return {'datas': [node_schema.dictify(model) for model in models]} def objectify(datas): return [node_schema.objectify(data) for data in datas] schema.dictify = dictify schema.objectify = objectify return schema
def get_sequence_model_admin(model, title=u"", excludes=(), **kw): """ Return a schema for configuring sequence of models model The SQLAlchemy model to configure """ node_schema = SQLAlchemySchemaNode( model, widget=deform.widget.MappingWidget(template=TEMPLATES_URL + "clean_mapping.pt", ), excludes=excludes, ) node_schema.name = 'data' default_widget_options = dict( orderable=True, template=TEMPLATES_URL + "clean_sequence.pt", min_len=1, ) widget_options = kw.get('widget_options', {}) for key, value in widget_options.items(): default_widget_options[key] = value schema = colander.SchemaNode(colander.Mapping()) schema.add( colander.SchemaNode( colander.Sequence(), node_schema, widget=deform.widget.SequenceWidget(**default_widget_options), title=title, name='datas')) def dictify(models): return {'datas': [node_schema.dictify(model) for model in models]} def objectify(datas): return [node_schema.objectify(data) for data in datas] schema.dictify = dictify schema.objectify = objectify return schema
def get_sequence_model_admin(model, title=u""): """ Return a schema for configuring sequence of models model The SQLAlchemy model to configure """ node_schema = SQLAlchemySchemaNode( model, widget=deform.widget.MappingWidget( template=TEMPLATES_URL + "clean_mapping.pt", ) ) node_schema.name = 'data' schema = colander.SchemaNode(colander.Mapping()) schema.add( colander.SchemaNode( colander.Sequence(), node_schema, widget=deform.widget.SequenceWidget( orderable=True, template=TEMPLATES_URL + "clean_sequence.pt", ), title=title, name='datas') ) def dictify(models): return {'datas': [node_schema.dictify(model) for model in models]} def objectify(datas): return [node_schema.objectify(data) for data in datas] schema.dictify = dictify schema.objectify = objectify return schema
def get_sequence_model_admin(model, title=u""): """ Return a schema for configuring sequence of models model The SQLAlchemy model to configure """ node_schema = SQLAlchemySchemaNode(model) node_schema.name = 'data' schema = colander.SchemaNode(colander.Mapping()) schema.add( colander.SchemaNode( colander.Sequence(), node_schema, widget=deform_widget.SequenceWidget( min_len=1, orderable=True, ), title=title, name='datas') ) return schema