mixinを編集する

以下のmixinは、Djangoの編集ビューを構築するのに使用されます。

注釈

これらの編集ビューへの結合され方の例は、 Generic editing ビュー を参照してください。

FormMixin

class django.views.generic.edit.FormMixin

フォームを作成したり表示したりする機能を提供するmixinクラス。

ミックスイン

メソッドと属性

initial

フォームの初期化データのディクショナリ。

form_class

インスタンス化するフォームクラス。

success_url

フォームが正常に処理されたときにリダイレクトするURL。

prefix

The prefix for the generated form.

get_initial()

Retrieve initial data for the form. By default, returns a copy of initial.

get_form_class()

Retrieve the form class to instantiate. By default form_class.

get_form(form_class=None)

Instantiate an instance of form_class using get_form_kwargs(). If form_class isn't provided get_form_class() will be used.

get_form_kwargs()

フォームのインスタンス化に必要なキーワード引数を構築します。

The initial argument is set to get_initial(). If the request is a POST or PUT, the request data (request.POST and request.FILES) will also be provided.

get_prefix()

Determine the prefix for the generated form. Returns prefix by default.

get_success_url()

Determine the URL to redirect to when the form is successfully validated. Returns success_url by 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 the model and queryset attributes, describing the type of object that the ModelForm is manipulating.

If you specify both the fields and form_class attributes, an ImproperlyConfigured exception will be raised.

ミックスイン

メソッドと属性

model

A model class. Can be explicitly provided, otherwise will be determined by examining self.object or queryset.

fields

A list of names of fields. This is interpreted the same way as the Meta.fields attribute of ModelForm.

This is a required attribute if you are generating the form class automatically (e.g. using model). Omitting this attribute will result in an ImproperlyConfigured exception.

success_url

フォームが正常に処理されたときにリダイレクトするURL。

success_url may contain dictionary string formatting, which will be interpolated against the object's field attributes. For example, you could use success_url="/polls/{slug}/" to redirect to a URL composed out of the slug field on a model.

get_form_class()

Retrieve the form class to instantiate. If form_class is provided, that class will be used. Otherwise, a ModelForm will be instantiated using the model associated with the queryset, or with the model, depending on which attribute is provided.

get_form_kwargs()

Add the current instance (self.object) to the standard get_form_kwargs().

get_success_url()

Determine the URL to redirect to when the form is successfully validated. Returns django.views.generic.edit.ModelFormMixin.success_url if it is provided; otherwise, attempts to use the get_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.

put(*args, **kwargs)

The PUT action is also handled and passes all parameters through to post().

DeletionMixin

class django.views.generic.edit.DeletionMixin

Enables handling of the DELETE HTTP action.

メソッドと属性

success_url

The url to redirect to when the nominated object has been successfully deleted.

success_url may contain dictionary string formatting, which will be interpolated against the object's field attributes. For example, you could use success_url="/parent/{parent_id}/" to redirect to a URL composed out of the parent_id field 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_url by default.