class F(Form): fields = [ FieldSet('fieldset', fields=[ FieldList('fieldlist', field=FieldSet( None, fields=[Field('subfield')])) ]), FieldBlock('field block', [Field('blocksubfield')], name='block') ]
class ListItemForm(BaseListItemForm): ordering_field = 'order' template = 'stream_sortables.html' def __init__(self, *args, **kwargs): self.ordering_field = kwargs.pop('ordering_field', self.ordering_field) BaseListItemForm.__init__(self, *args, **kwargs) fields = [ FieldList( 'items', widget=FieldList.widget(template='list_item_form'), field=FieldSet('item', fields=[ Field('item', conv=ListItemModelChoice(required=False), label=u'item'), Field("order", conv=convs.Int(), label=u'Порядок'), ]), ), ] def initial_for_item(self, item): return {"item": item, "order": getattr(item, self.ordering_field)}
class ListItemForm(Form): template = 'stream_sortables.html' def __init__(self, *args, **kwargs): kwargs['initial'] = self.initial_for_items(kwargs.pop('items', [])) Form.__init__(self, *args, **kwargs) fields = [ FieldList( 'items', widget=FieldList.widget(template='list_item_form'), field=FieldSet('item', fields=[ Field('item', conv=ListItemModelChoice(required=False), label=u'item'), ]), ), ] def initial_for_item(self, item): return {'item': item} def initial_for_items(self, items): return {'items': [self.initial_for_item(item) for item in items]}
class _Form(Form): fields = [ FieldSet('fs', fields=[ FieldBlock('field block', [Field('number', convs.Int())]), ]) ]
class f(Form): fields = [ FieldSet('pass', conv=PasswordConv(**kwargs), fields=[ Field('pass'), Field('conf'), ]) ]
class f(Form): fields = [ FieldSet('dt', conv=convs.SplitDateTime(**kwargs), fields=[ Field('date', conv=convs.Date()), Field('time', conv=convs.Time()), ]) ]
class F(Form): fields = [ FieldList('list', field=FieldSet(None, fields=[ Field('name', conv=convs.Char(), widget=widgets.TextInput) ])) ]
class F(Form): fields = [ FieldSet('fs', conv=convs.ModelDictConv(*a, **kw), fields=[Field('a'), Field('b')]), ]
def __init__(self, name, **kwargs): kwargs.setdefault('fields', self.fields) kwargs.setdefault('conv', self.conv) FieldSet.__init__(self, name, **kwargs)