mixinを編集する¶
以下のmixinは、Djangoの編集ビューを構築するのに使用されます。
django.views.generic.edit.FormMixindjango.views.generic.edit.ModelFormMixindjango.views.generic.edit.ProcessFormViewdjango.views.generic.edit.DeletionMixin
注釈
これらの編集ビューへの結合され方の例は、 Generic editing ビュー を参照してください。
FormMixin¶
-
class
django.views.generic.edit.FormMixin¶ フォームを作成したり表示したりする機能を提供するmixinクラス。
ミックスイン
メソッドと属性
-
initial¶ フォームの初期化データのディクショナリ。
-
form_class¶ インスタンス化するフォームクラス。
-
success_url¶ フォームが正常に処理されたときにリダイレクトするURL。
-
get_form_class()¶ Retrieve the form class to instantiate. By default
form_class.
-
get_form(form_class=None)¶ Instantiate an instance of
form_classusingget_form_kwargs(). Ifform_classisn't providedget_form_class()will be used.
-
get_form_kwargs()¶ フォームのインスタンス化に必要なキーワード引数を構築します。
The
initialargument is set toget_initial(). If the request is aPOSTorPUT, the request data (request.POSTandrequest.FILES) will also be provided.
-
get_success_url()¶ Determine the URL to redirect to when the form is successfully validated. Returns
success_urlby default.
-
form_valid(form)¶ Redirects to
get_success_url().
-
form_invalid(form)¶ Renders a response, providing the invalid form as context.
-
get_context_data(**kwargs)¶ Calls
get_form()and adds the result to the context data with the name 'form'.
-
ModelFormMixin¶
-
class
django.views.generic.edit.ModelFormMixin¶ A form mixin that works on
ModelForms, rather than a standalone form.Since this is a subclass of
SingleObjectMixin, instances of this mixin have access to themodelandquerysetattributes, describing the type of object that theModelFormis manipulating.If you specify both the
fieldsandform_classattributes, anImproperlyConfiguredexception will be raised.ミックスイン
メソッドと属性
-
model¶ A model class. Can be explicitly provided, otherwise will be determined by examining
self.objectorqueryset.
-
fields¶ A list of names of fields. This is interpreted the same way as the
Meta.fieldsattribute ofModelForm.This is a required attribute if you are generating the form class automatically (e.g. using
model). Omitting this attribute will result in anImproperlyConfiguredexception.
-
success_url¶ フォームが正常に処理されたときにリダイレクトするURL。
success_urlmay contain dictionary string formatting, which will be interpolated against the object's field attributes. For example, you could usesuccess_url="/polls/{slug}/"to redirect to a URL composed out of theslugfield on a model.
-
get_form_class()¶ Retrieve the form class to instantiate. If
form_classis provided, that class will be used. Otherwise, aModelFormwill be instantiated using the model associated with thequeryset, or with themodel, depending on which attribute is provided.
-
get_form_kwargs()¶ Add the current instance (
self.object) to the standardget_form_kwargs().
-
get_success_url()¶ Determine the URL to redirect to when the form is successfully validated. Returns
django.views.generic.edit.ModelFormMixin.success_urlif it is provided; otherwise, attempts to use theget_absolute_url()of the object.
-
form_valid(form)¶ Saves the form instance, sets the current object for the view, and redirects to
get_success_url().
-
form_invalid(form)¶ Renders a response, providing the invalid form as context.
-
ProcessFormView¶
-
class
django.views.generic.edit.ProcessFormView¶ A mixin that provides basic HTTP GET and POST workflow.
注釈
This is named 'ProcessFormView' and inherits directly from
django.views.generic.base.View, but breaks if used independently, so it is more of a mixin.Extends
メソッドと属性
-
get(request, *args, **kwargs)¶ Renders a response using a context created with
get_context_data().
-
post(request, *args, **kwargs)¶ Constructs a form, checks the form for validity, and handles it accordingly.
-
DeletionMixin¶
-
class
django.views.generic.edit.DeletionMixin¶ Enables handling of the
DELETEHTTP action.メソッドと属性
-
success_url¶ The url to redirect to when the nominated object has been successfully deleted.
success_urlmay contain dictionary string formatting, which will be interpolated against the object's field attributes. For example, you could usesuccess_url="/parent/{parent_id}/"to redirect to a URL composed out of theparent_idfield on a model.
-
delete(request, *args, **kwargs)¶ Retrieves the target object and calls its
delete()method, then redirects to the success URL.
-
get_success_url()¶ Returns the url to redirect to when the nominated object has been successfully deleted. Returns
success_urlby default.
-