问题标签 [django-class-based-views]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3087 浏览

django - Django:基于参数类的视图

我正在尝试使用通用 CreateView 类来处理从同一基类继承的一组模型的表单。

为了保持干燥,我想定义一个 CreateView 类来处理从 BaseContent 继承的所有类。

该视图的 url 模式是:

像这样的东西应该工作:

但我得到了这个例外:

这个建议似乎不成立,因为我不愿意设置类属性modelqueryset保持生成的模型表单动态。覆盖get_object似乎与创建对象无关。

我尝试过覆盖get_queryset(),但此方法不接受request参数,也无法访问self.model_name来自 url 模式的参数。

长话短说,如何使 CreateView 使用基于从 url 传递的参数的动态表单?

谢谢。

0 投票
3 回答
9320 浏览

django - Django 基于类的通用视图和身份验证

我对 Django 很陌生(从 1.3 开始)。在构建应用程序时,我从第一天开始就使用新的基于类的通用视图,使用内置类的组合并在需要添加到上下文的地方对它们进行子类化。

现在我的问题是,我需要回到我的视图,并且只有登录用户才能访问它们。我找到的所有文档都显示了如何使用旧的功能通用视图来做到这一点,而不是基于类的视图。

这是一个示例类:

如何向 django 的新的基于类的视图添加身份验证?

0 投票
1 回答
568 浏览

django - 如何使用 DetailView 显示内联?

我有一个Project模型。这个模型有Days哪些是内的。

如何使用 DetailView 显示它们?

我的views.py 看起来像这样:

我如何通过这一天内联?

我试过了:

但这不起作用。此外,我使用通用视图似乎毫无意义,但get_object_or_404无论如何都要这样做Days

我该如何正确地做到这一点?

0 投票
2 回答
2675 浏览

django - 基于 Django 类的通用视图和 ModelForms

与 Django 中有关通用视图的许多文档一样,我找不到明确描述如何将新的基于类的通用视图与 Django 表单一起使用的文档。

它是如何完成的?

0 投票
1 回答
385 浏览

django - django:如何将此视图迁移到等效的基于类的通用视图?

我无法将以下代码转换为新的 django 1.3 基于类的通用视图格式。具体来说,我不明白如何将“extra_context”传递给基于类的视图。有人可以帮我将此代码转换为新符号吗?或发布一个很好的例子的链接?我已阅读文档,但示例非常脆弱。

感谢您的意见!

0 投票
1 回答
2805 浏览

django-forms - Django 1.3 CreateView、ModelForm 和 request.user 过滤字段

我正在尝试过滤 ModelForm 上的字段。我正在为我的视图子类化通用 CreateView。我在网上找到了很多关于我的问题的参考资料,但是对于 Django 1.3 的基于类的视图,这些解决方案似乎不起作用(至少对我而言)。

这是我的模型:

这是我的看法:

这是我添加订阅者的原始表单,没有过滤器:

这是我修改后的表格,试图过滤,但不起作用:

如果我这样更改此修改后的表格:

def __init__(self, user=None, **kwargs)

它有效 - 它没有给我带来订阅者列表。但是我尝试通过任何方式传递请求用户,我总是得到一个名称“请求”或名称“自我”未定义错误。

那么,如何修改我的代码以通过 request.user 过滤subscriber_list,并且仍然使用 Django 1.3 的 CreateView。

0 投票
1 回答
2821 浏览

django - 无法通过通用类视图将“slug”字段传递到 URL

我有两个出版物和员工模型:

和:

我想有一个视图来显示员工的所有出版物。这是我现在正在使用的视图:

这是我目前使用的 URL 模式,我将 Employee 模型中的 slug 传递到 URL 中,以获取该员工所有出版物的列表:

但是我在 /employees/joe-reporter/publications/ 处收到了一个 IndexError,因为元组索引超出了范围。这是回溯:

我究竟做错了什么?

0 投票
5 回答
30422 浏览

python - 在 FormView form_valid 方法中更新上下文数据?

我有一个QuestionView派生自该类的FormView类。这是一个代码片段来解释我的问题:

如上所示,我更新了一组上下文变量,form_valid并打算在模板中使用这些变量的更新值 - 因此context字典中的变量。这段代码的问题 context_var1是看不到更改 - 可能是因为get_context_data在方法之前调用form_valid。有解决方法吗?

0 投票
2 回答
587 浏览

django - 使用基于类的视图来处理信息?

我一直在试验 Django 的基于类的视图,并试图编写一个简单的基于类的视图来处理某些信息,request以便“处理程序”方法可以使用处理后的信息。

我似乎没有完全理解文档所说的内容,并且不确定这应该是 Mixin、通用视图还是其他东西。我正在考虑制作这样的课程:

这将允许某人编写如下视图:

上面的代码是正确的方法吗?有没有更简单/更好的方法来做到这一点?这会阻止上述功能在另一个通用视图(例如内置通用视图)中使用吗?

0 投票
1 回答
5082 浏览

django - 在 Django 表单集中过滤对象

我正在使用 inlineformset_factory 生成一个表单集,如下所示:

我有两个问题

  1. 如何限制 Model2 对象,以便不存在所有适用的对象,而只存在过滤的子集?
  2. 有没有人有任何使用基于类的视图和表单集的示例代码?

更新了功能代码回答问题 #1