- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有 Form
与 ModelChoiceField
,用作 form_class
在 FormView
.
必须使用绑定(bind)到 request
的信息填充选择字段。目的。
让我们总结一下:
class MyFormView(FormView):
# I need to pass `request.user` and a value
# derived from `request.GET['pk']` to the form
form_class = MyForm
class MyForm(Form):
choices = ModelChoiceField(queryset=MyChoice.objects.none())
def __init__(self, user, number, *args, **kwargs):
super(MyForm, self).__init__(*args, **kwargs)
self.fields['choices'] = MyChoice.objects(number=number, owner=user)
get_form
但我不确定这是这样做的正确方法:
def get_form(self, form_class):
user = self.request.user
number = SomeModel.objects.get(self.GET['pk']).number
return form_class(user, number, **self.get_form_kwargs())
最佳答案
覆盖 get_form
会起作用,但更好的方法是覆盖 get_form_kwargs
,这样您就不必复制 get_form
中的代码方法。
class MyFormView(FormView):
form_class = MyForm
def get_form_kwargs(self):
kwargs = super(MyFormView, self).get_form_kwargs()
kwargs['user'] = self.request.user
kwargs['number'] = SomeModel.objects.get(self.GET['pk']).number
return kwargs
关于Django:将数据从 CBV 表单 View 传递到表单 CBV,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43237742/
所以我有一个 CBV (A)、CBV (B) 和一个类似的 url regex=r'^(?P[-\w]+)/(?P[-\w]+)' 我想使用 (A) 读取 slug 和应用程序参数,然后根据这些参数,
我有 Form与 ModelChoiceField ,用作 form_class在 FormView . 必须使用绑定(bind)到 request 的信息填充选择字段。目的。 让我们总结一下: cl
我有两个与 this case 非常相似的模型: class Location(models.Model): city = models.CharField(max_length=20)
我在 forms.py 中创建了两个表单,一个表单的字段比另一个少。 我现在想做的是获取当前用户权限并根据这些权限设置 CBV 的表单类。 以下是我目前的看法: class EditCircuit(U
我是 CBV 的新手,正在寻求重构我的 FBV 的帮助。也许你可以给我看一些例子或建议。如您所见,我对 DRY 原则也有疑问。 我的 FBV: def formen(request): htm
(首先很抱歉我的英语不好) 当用户保存更改时,我试图在 UpdateView 中显示一条消息! 这是我的看法 class NeedUpdateView(UpdateView): model =
在我的 CreateView我正在覆盖 form_valid() 的类功能如下: class ActionCreateView(CreateView): model = Action
我有一个 view我想与自定义 form_class 一起使用: class CustomCreateView(CreateView): form_class = CustomCreateFo
因此,我正在开发一个Web应用程序,该应用程序已在其注册过程中实现了安全性问题。由于我的模型的设置方式以及我试图使用Django的基于类的视图(CBV)的事实,我在将所有内容完全集成在一起时遇到了一些
由于需要检查 M2M 字段的唯一性,建议我编写一个当 m2m 更改时触发的信号。效果很好。 但是,当使用基于类的 View 创建 Badge 对象时,我想捕获此异常并将其转换为表单错误,以便可以以干净
我想检查 View 中对象的状态。如果为 True,则不会发生任何变化,但如果状态不为 True,我想将用户重定向到另一个页面。 以下是我的观点: class ProductDetailView(Lo
我的模型有一个标准的 CBV 更新方法公告: 模型.py: class Announcement(models.Model): title = models.CharField(max_len
我正在尝试测试我的应用。我查看了文档,并设法对我的 URL 和除一个 View 之外的所有 View 进行了测试。 我在将它转换为类 View 时遇到问题,我不确定我应该在这里进行哪种测试?文档解释了
文档功能 nice options for applying decorators such as login_required to Class Based Views . 但是,我不太清楚如何将特
我实现了一个表单,我需要填充用户对象中的字段(名字、姓氏、电子邮件)以及填写新的成员对象。我已经使用基于函数的 View (FBV) 实现了这一点,但我觉得我应该能够使用基于类的 View (CBV)
我无法理解如何使用单个 CBV 来处理(至少)2 个不同的场景。这就是我正在尝试做的事情: 我有一个 ListView 来显示对象列表。从那里,我生成一个链接以导航到 用于显示对象详细信息的 Deta
我在django 1.11中的应用程序,带有django软盘形式,输入电子邮件地址后 - 就可以了,发送邮件。 问题是当没有邮件地址并按“发送”按钮时。 我收到错误: 'ProductDetailVi
我目前正在尝试使用 Django 1.5 进入“基于类的 View ”。 从设计的角度来看,我想知道将处理来自表单的数据的逻辑放在哪里在一个简单的 FormView 中。 我知道所有表单验证代码都进入
我正在学习 Django,我在从 CreateView 重定向回来时遇到问题 我想重定向到 BookDetail 页面,其中包含由 CreateView 创建的 bookinstances 列表。模型
在我的例子中,实例模型可以从以下位置删除: 一个ListView继承View 一个DetailView继承View 默认情况下,调用删除 View 时: get 函数调用“confirm_delete
我是一名优秀的程序员,十分优秀!