以下混音器用于构造Django的编辑视图:
备注
有关如何将它们组合到编辑视图中的示例,请参阅 常规编辑视图 .
FormMixin
¶提供用于创建和显示窗体的工具的mixin类。
Mixins
方法和属性
包含窗体初始数据的字典。
要实例化的窗体类。
成功处理表单时重定向到的URL。
检索要实例化的窗体类。默认情况下 form_class
。
实例化的实例 form_class
使用 get_form_kwargs()
.如果 form_class
没有提供 get_form_class()
将被使用。
生成实例化窗体所需的关键字参数。
这个 initial
参数设置为 get_initial()
. 如果请求是 POST
或 PUT
,请求数据 (request.POST
和 request.FILES
)也将提供。
确定成功验证表单时要重定向到的URL。退换商品 success_url
默认情况下。
重定向到 get_success_url()
.
呈现响应,将无效表单作为上下文提供。
调用 get_form()
并将结果添加到名为“form”的上下文数据中。
ModelFormMixin
¶工作的窗体混音器 ModelForms
而不是一个独立的窗体。
因为这是 SingleObjectMixin
,此mixin的实例可以访问 model
和 queryset
属性,描述 ModelForm
正在操纵。
如果您同时指定 fields
和 form_class
属性 ImproperlyConfigured
将引发异常。
Mixins
方法和属性
字段名称列表。这与 Meta.fields
属性 ModelForm
.
如果要自动生成表单类(例如使用 model
)省略此属性将导致 ImproperlyConfigured
例外。
成功处理表单时重定向到的URL。
success_url
可能包含字典字符串格式,将根据对象的字段属性进行插值。例如,您可以使用 success_url="/polls/{{slug}}/"
重定向到由 slug
模型上的字段。
检索要实例化的窗体类。如果 form_class
将使用该类。否则,A ModelForm
将使用与 queryset
,或与 model
,取决于提供的属性。
添加当前实例 (self.object
)符合标准 get_form_kwargs()
.
确定成功验证表单时要重定向到的URL。退换商品 django.views.generic.edit.ModelFormMixin.success_url
如果提供;否则,尝试使用 get_absolute_url()
对象的
保存窗体实例,设置视图的当前对象,并重定向到 get_success_url()
.
呈现响应,将无效表单作为上下文提供。
ProcessFormView
¶提供基本HTTP GET和POST工作流的混合。
备注
它名为“processformview”,直接从 django.views.generic.base.View
,但如果单独使用则会中断,因此它更像是一种混合。
Extends
方法和属性
使用创建的上下文呈现响应 get_context_data()
.
构造一个表单,检查表单的有效性,并相应地处理它。
DeletionMixin
¶启用对 DELETE
HTTP操作。
方法和属性
成功删除指定对象时重定向到的URL。
success_url
可能包含字典字符串格式,将根据对象的字段属性进行插值。例如,您可以使用 success_url="/parent/{{parent_id}}/"
重定向到由 parent_id
模型上的字段。
检索目标对象并调用其 delete()
方法,然后重定向到成功的URL。
返回指定对象成功删除后重定向到的URL。退换商品 success_url
默认情况下。
7月 22, 2024