rebar Package¶
rebar Package¶
group Module¶
-
class
rebar.group.FormGroup(data=None, files=None, auto_id='id_%s', prefix=None, initial=None, label_suffix=':', instance=<rebar.group.Unspecified object>, error_class=None, member_kwargs=None)¶ Bases:
objectForm-like wrapper for a heterogenous collection of Forms.
A FormGroup collects an ordered set of Forms and/or FormSets, and provides convenience methods for validating the group as a whole.
-
add_prefix(field_name)¶ Return the field name with a prefix prepended.
-
clean()¶ Hook for doing formgroup-wide cleaning/validation.
Subclasses can override this to perform validation after .clean() has been called on every member.
Any ValidationError raised by this method will be accessible via formgroup.group_errors().()
-
errors¶
-
forms¶
-
get_default_prefix()¶
-
group_errors()¶ Return the group level validation errors.
Returns an ErrorList of errors that aren’t associated with a particular form. Returns an empty ErrorList if there are none.
-
html_id(field_name, form=None)¶ Return the html ID for the given field_name.
-
is_valid()¶
-
media¶
-
save()¶ Save the changes to the instance and any related objects.
-
-
class
rebar.group.StateValidatorFormGroup(*args, **kwargs)¶ Bases:
rebar.validators.StateValidatorFormMixin,rebar.group.FormGroupSubclasses are expected to define the state_validators property, which is a mapping of states to StateValidator objects.
-
get_errors(*states)¶
-
is_valid(*states)¶ Returns True if no errors are thrown for the specified state.
-
-
rebar.group.formgroup_factory(form_classes, formgroup=None, state_validators=None)¶ Return a FormGroup class for the given form[set] form_classes.
testing Module¶
Tools for testing Forms, FormSets, and FormGroups.
-
rebar.testing.empty_form_data(formset, index=None)¶ Return a form data dictionary for a “new” form in a formset.
Given a formset and an index, return a copy of the empty form data. If index is not provided, the index of the first empty form will be used as the new index.
-
rebar.testing.flatten_to_dict(item)¶ Recursively flatten a Form-like object to a data dict.
Given a Form-like object such as a Form, ModelForm, FormSet, or FormGroup, flatten the members into a single dict, similar to what is provided by request.POST.
If
itemis a FormSet, all member Forms will be included in the resulting data dictionary
validators Module¶
-
class
rebar.validators.StateValidator¶ Bases:
objectField Validators which must pass for an object to be in a state.
-
disable()¶ Disable the validator; when disabled, no errors will be returned.
-
enable()¶ Enable the validators.
-
enabled¶
-
errors(instance)¶ Run all field validators and return a dict of errors.
The keys of the resulting dict coorespond to field names. instance can be a dict (ie, form.cleaned_data), a form, a formset, or a model instance.
If instance is a form, full_clean() will be called if the form is bound.
If instance is a formset, full_clean() will be called on each member form, if bound.
-
is_valid(instance)¶ Return True if no errors are raised when validating instance.
instance can be a dict (ie, form.cleaned_data), a form, or a model instance. If instance is a form, full_clean() will be called.
-
validators= {}¶
-
-
class
rebar.validators.StateValidatorFormMixin(*args, **kwargs)¶ Bases:
objectMixin for adding state validators to forms.
Subclasses are expected to define the state_validators property, which is a mapping of states to StateValidator objects.
-
get_errors(state)¶ Return any validation errors raised for the specified state.
-
is_valid(*states)¶ Returns True if no errors are thrown for the specified state.
-
state_validators= {}¶
-
-
rebar.validators.statevalidator_factory(field_validators, validator=<class 'rebar.validators.StateValidator'>)¶ Return a StateValidator Class with the given validators.