django userrena のマグショットを、ユーザー名、パスワード、電子メール アドレスと共に初期登録フォームに追加したいと思います。私はよくある質問(http://docs.django-userena.org/en/latest/faq.html#how-do-i-add-extra-fields-to-forms)で言ったようにやったので、今私は自分のものを持っていますユーザー登録フォームを継承したフォーム。また、save メソッドを再定義して、新しいマグショットをユーザーのプロファイルに保存しました。しかし、そのフィールドをフォームに表示する方法がわかりません。userena は自動的にレンダリングするモデルフォームを使用しているため、例は見つかりませんでした。同じように、このフォームにテキスト フィールドを forms.CharField として追加できます。
質問する
482 次
1 に答える
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
于 2012-09-12T16:58:42.820 に答える