Django FormSet 和 PEP8 命名约定

Django FormSet and PEP8 naming conventions

我想知道我应该如何命名我的表单集定义。假设我有一个名为 UserForm 的表单,那么我将定义一个补充表单集,例如:

UserFormSet = modelform_factory(User, UserForm, extra=0)

这里关于表单集的每个人 post 似乎都像上面那样命名他们的表单集。

但是 PyCharm 告诉我那很糟糕,因为 UserFormSet 不是 class 定义。

正确的方法是什么?

来自 django 网页 Formsets,您分配表单集的方式是正确的。出现此问题是因为 PyCharm 正在将 Formset 赋值视为典型变量,即使它是 class。来自 modelform_factory 的 return 值如下。

return type(form.__name__ + 'FormSet', (formset,), attrs)
# where
type(name, bases, dict)

如您所见,return是一个使用表单集基础的 class。所以这个错误是可以忽略的,或者如果可能的话你可以尝试覆盖它。我不熟悉 PyCharm 但这似乎是他们应该添加例外的东西。