2013-06-02 88 views
0

假設我已經啓動了一個名爲accounts的Django應用程序,我希望該模型能夠擴展UserenaBaseProfile類。到目前爲止,我已經通過django-userena教程中的代碼完成了這個任務。設置擴展表單(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類中的accounts/models.py中繼承的UserenaBaseProfilefavorite_snack這個字段只是我想要擴展的任意字段(就像在django-userena教程中所做的那樣)。

從那裏,如果所做的事情至今甚至做得正確,我的真正的問題是我如何擴展默認userena/forms.py形式(這是創建帳戶,所以我想擴展類SignupForms因爲*it只包含爲usernamepassword,email領域。當然,我期待擴大與favorite_snack表單字段的註冊表單,因爲這是我延伸到我的用戶類中的字段。

很抱歉,如果我失去了一些東西大了,我新的Django和web開發!我試圖離開代碼示例儘可能類似於django-userena docs,試圖幫助其他人開始使用它。 anks!

回答

0

在userena的doc的F.A.Q會議有:How do I add extra fields to forms?

這是你在尋找什麼。它們包括First nameLast name,這些新形式覆蓋了userena的默認設置。看到它需要做一些調整至urls.py

在你的情況下,最後,你需要將favourite_snack保存在您的新形式,的save方法,他們用First nameLast name

做同樣的方式

希望這有助於!