[解決済み] django-allauthを使用する際のユーザープロファイルのカスタマイズ方法
2022-09-15 20:45:30
質問
私はdjango-allauthアプリでdjangoプロジェクトを持っています。私はサインアップ時にユーザーから追加のデータを収集する必要があります。私は同様のものに出会った の質問を見つけました。 を見つけましたが、残念ながら、プロファイルのカスタマイズ部分については誰も回答していません。
につきまして
に提供されているドキュメントでは
django-allauth
:
ACCOUNT_SIGNUP_FORM_CLASS
(=None
)カスタムフォームクラスを指す文字列 (例えば
‘myapp.forms.SignupForm’
を指す文字列。サインアップ時に使用され、ユーザーに追加の入力 (例: ニュースレターのサインアップ、生年月日) を要求します。) このクラスは‘save’
メソッドを実装し、新しくサインアップしたユーザーを唯一のパラメーターとして受け入れます。
私は django の初心者で、これと格闘しています。どなたか、そのようなカスタムフォームクラスの例を示していただけませんか?また、次のようなユーザーオブジェクトへのリンクを持つモデルクラスも追加する必要がありますか? この ?
どのように解決するのですか?
サインアップの際に、ユーザーに姓名を尋ねたいとします。以下のように、これらのフィールドをあなた自身のフォームに置く必要があります。
class SignupForm(forms.Form):
first_name = forms.CharField(max_length=30, label='Voornaam')
last_name = forms.CharField(max_length=30, label='Achternaam')
def signup(self, request, user):
user.first_name = self.cleaned_data['first_name']
user.last_name = self.cleaned_data['last_name']
user.save()
そして、設定からこのフォームを指定してください。
ACCOUNT_SIGNUP_FORM_CLASS = 'yourproject.yourapp.forms.SignupForm'
なお
SignupForm
によるフォームオーバーライドと同じファイルでは定義できません。
ACCOUNT_FORMS
または
SOCIALACCOUNT_FORMS
というのは、循環インポートエラーにつながるからです。
以上です。
関連
-
AttributeError: 'str' オブジェクトには 'decode' という属性がありません。
-
[解決済み] Django のビューで 2 つ以上のクエリセットを結合するにはどうすればよいですか?
-
[解決済み】Djangoでモデルインスタンスをシリアライズする方法は?
-
[解決済み] Django South - テーブルはすでに存在する
-
[解決済み] Django の filter と get は単一オブジェクトの場合?
-
[解決済み] Django で null を許容するユニークなフィールド
-
[解決済み] Django は静的ファイルの URL をビューで取得します。
-
[解決済み] Django テンプレート url タグに url パラメータを追加する方法は?
-
[解決済み] django : select_related と get_object_or_404 を一緒に使用する。
-
[解決済み] Django の日付テンプレートのデフォルトフォーマットを変更するには?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
django store to databaseは現地時間より8時間短い?(2021-05-12更新)
-
Django QuerySet マルチテーブル結合/条件付きピッキング/マージ
-
[解決済み] Django で完全な/絶対的な URL (ドメイン付き) を取得するにはどうすればよいですか?
-
[解決済み] Django-Rest-Framework のシリアライザーで Request.User を取得する方法とは?
-
[解決済み] DjangoとReactJSを連携させる方法とは?
-
[解決済み] Django ManyToMany filter()
-
[解決済み] django で複数のオブジェクトを削除する
-
[解決済み] django のテンプレートで最初の文字を大文字にする
-
[解決済み] djangoでurls.pyから直接名前付きurlパターンにリダイレクトする?
-
[解決済み] django テンプレートで "ブロック" を繰り返す方法