2012-09-12 160 views
1

我想添加在django userena的照片到初始註冊表單,以及用戶名,密碼和電子郵件地址。我在常見問題解答中說過(http://docs.django-userena.org/en/latest/faq.html#how-do-i-add-extra-fields-to-forms)因此,現在我擁有自己的表單,它繼承了userena註冊表單。我還重新定義了保存方法以將新的面部照片保存在用戶的個人資料中。但是現在我不知道如何讓這個領域出現在表格中。我找不到任何示例,因爲userena使用自動呈現它的模型。以同樣的方式,我可以在這個表單中添加一個文本字段作爲forms.CharField我想知道我應該使用什麼來渲染mugshot?Django userena面部照片窗口小部件

+0

你詢問如何顯示用戶的照片圖像?或者如何在註冊表單中包含該字段?同時發佈您工作的代碼,以便社區可以輕鬆幫助您。 – arulmr

+0

我在問如何在註冊表單中包含該字段。我會發布我的代碼作爲答案,我剛剛得到它的工作。 – Bastian

回答

2

那麼看來,它是很容易的,只需按照userena FAQ中描述的步驟,一些額外的字段添加到表單,並在新forms.py把沿線的東西:

from django import forms  
from userena.forms import SignupForm 

class SignupFormExtra(SignupForm): 
    avatar = forms.ImageField() 

    def save(self): 
     new_user = super(SignupFormExtra, self).save() 

     profile = new_user.get_profile() 
     profile.mugshot = self.cleaned_data['avatar'] 
     profile.save() 

     return new_user 
+0

小部件在這裏不是必需的。使用'forms.ImageField'就足夠了。 – arulmr

+0

我在編輯中刪除了它。 – Bastian

相關問題