假设我已经启动了一个名为accounts
的Django应用程序,我希望该模型扩展UserenaBaseProfile类。到目前为止,我已经使用django-userena教程中的代码完成了这项工作。
class MyProfile(UserenaBaseProfile):
user = models.OneToOneField(User,
unique=True,
verbose_name=_('user'),
related_name='my_profile')
favourite_snack = models.CharField(_('favourite snack'),
max_length=5)
我仍然不确定如何使用表单创建一个字段多于userena/models.py
中包含的字段的用户。该模型文件包含我在MyProfile类的UserenaBaseProfile
中继承的accounts/models.py
。字段favorite_snack
是我想要扩展的一些任意字段(正如在django-userena教程中所做的那样)。
从那里开始,如果到目前为止所做的工作甚至正确完成,我真正的问题是如何扩展默认的userena/forms.py
表单(这是为了创建帐户,所以我想扩展类{{ 1}}因为*it只包含SignupForms
,username
和password,
的字段。当然我希望使用email
表单字段扩展注册表单,因为这是我扩展到我的用户类的字段。
对不起,如果我遗漏了一些大事,我是Django和Web开发的新手!我试图让代码示例尽可能与django-userena docs类似,以帮助其他人开始使用它。谢谢!
答案 0 :(得分:0)
在userena的doc的F.A.Q
会话中,有:How do I add extra fields to forms?
这正是您正在寻找的。它们在新表单中包含First name
和Last name
,它会覆盖userena的默认值。最后看到需要对urls.py
在您的情况下,您需要将favourite_snack
保存在新表单的save
方法中,与First name
和Last name
希望这有帮助!