djblets.configforms.forms¶
Base support for configuration forms.
-
class
ConfigPageForm(page, request, user, *args, **kwargs)[source]¶ Bases:
django.forms.forms.FormBase class for a form on a ConfigPage.
Consumers can subclass ConfigPageForm and register it on a
djblets.configforms.pages.ConfigPage. It will be shown whenever the user navigates to that page.A form will generally be shown as a box with a title and a save button, though this is customizable.
A standard form presents fields that can be filled out and posted. More advanced forms can supply their own template or even their own JavaScript models, views, and CSS.
-
form_id= None[source]¶ The unique ID of the form.
This must be unique across all ConfigPages at a given URL.
-
save_label= _(u’Save’)[source]¶ The label for the save button.
This can be set to
Noneto disable the button.
-
__init__(page, request, user, *args, **kwargs)[source]¶ Initialize the form.
Parameters: - page (ConfigPage) – The page this form resides on.
- request (HttpRequest) – The HTTP request from the client.
- user (User) – The user who is viewing the page.
-
set_initial(field_values)[source]¶ Set the initial fields for the form based on provided data.
This can be used during
load()to fill in the fields based on data from the database or another source.Parameters: field_values (dict) – The initial field data to set on the form.
-
is_visible()[source]¶ Return whether the form should be visible.
This can be overridden to hide forms based on certain criteria.
Returns: Trueif the form should be rendered on the page (default), orFalseotherwise.Return type: bool
-
get_js_model_data()[source]¶ Return data to pass to the JavaScript Model during instantiation.
If
js_model_classis provided, the data returned from this function will be provided to the model when constructued.Returns: A dictionary of attributes to pass to the Model instance. By default, this will be empty. Return type: dict
-
get_js_view_data()[source]¶ Return data to pass to the JavaScript View during instantiation.
If
js_view_classis provided, the data returned from this function will be provided to the view when constructued.Returns: A dictionary of options to pass to the View instance. By default, this will be empty. Return type: dict
-
render()[source]¶ Render the form to a string.
template_namewill be used to render the form. The template will be passedform(this form’s instance) andpage(the parentConfigPage).Subclasses can override this to provide additional rendering logic.
Returns: The rendered form as HTML. Return type: unicode
-