0

据我了解,扩展UserDjango 模型的标准方法是实现profiles.

这非常适合我,因为我有 3 种类型的配置文件(3 个不同的Model子类),它们都基于User唯一性和身份验证模型。

但是,我无法确定实现用户创建表单的最佳方式。我是不是该...

  1. 使用 mixins:继承一个ModelFormwithmodel=User和一个 with model=Profile,手动覆盖save()clean()调用基类的方法并执行外键分配。

  2. 使用组合:继承Form和手动实例化管理两个ModelForms.

  3. 分别实例化表单,并save()以手动排序的方式。

  4. 我没有想到的最佳方式。

我会很感激一个(但最小的)实现,所以我可以确定我做出了正确的调用。

提前致谢。

4

1 回答 1

1

您可以编写一个表单,作为 Profile 模型和 contrib User 模型的组合 ModelForm。为此,需要对 init 上的表单 kwargs 进行一些操作。看到这个片段:http ://djangosnippets.org/snippets/2081/

于 2012-08-31T18:26:49.527 回答