Python Django:用户配置文件创建表单

Python Django:用户配置文件创建表单,python,django,forms,models,Python,Django,Forms,Models,据我所知,扩展UserDjango模型的标准方法是实现profiles 这非常适合我,因为我有3种类型的配置文件(3种不同的模型子类),它们都基于用户模型进行唯一性和身份验证 然而,我很难决定实现用户创建表单的最佳方式。我应该 使用mixin:用model=User继承一个ModelForm,用model=Profile继承一个ModelForm,手动重写save()和clean()调用基函数的方法并执行外键赋值 使用组合:继承表单并手动实例化和管理两个模型表单 分别实例化表单,并以手动排序的方

据我所知,扩展
User
Django模型的标准方法是实现
profiles

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

然而,我很难决定实现用户创建表单的最佳方式。我应该

  • 使用mixin:用
    model=User
    继承一个
    ModelForm
    ,用
    model=Profile
    继承一个
    ModelForm
    ,手动重写
    save()
    clean()
    调用基函数的方法并执行外键赋值

  • 使用组合:继承
    表单
    并手动实例化和管理两个
    模型表单

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

  • 我没想到的最好的方法

  • 我希望能有一个(无论多么小的)实现,这样我就可以确保我打了正确的电话


    提前感谢。

    您可以编写一个表单,作为配置文件模型和contrib用户模型的组合模型表单。要实现这一点,需要对init上的窗体kwargs进行一些操作。请参阅此代码段:

    您正在尝试自定义用户模型?我已经这样做了。我正在尝试使用相同的表单创建一个配置文件和一个用户。这就是我最终要做的,尽管我得到的答案太晚了:(。我将在以后发布我的实现以供参考。非常感谢!