0

私は現在、DjangoCMSサイトでユーザー登録のアプリケーションに取り組んでいます。

登録フォームは正常に機能し、ユーザーを作成し、さらにカスタムフィールドを登録モデルに追加します。

私が知りたいのは、auth_userを更新してユーザーの名前と姓を含める方法です。

現在、ユーザーは次の方法で作成されています。

import newform
from betaregistration.newform import RegistrationFormZ

def user_created(sender, user, request, **kwargs):
    form = RegistrationFormZ(request.POST)
    data = newform.BetaProfile(user=user)
    data.first_name = form.data["first_name"]
    data.last_name = form.data["last_name"]
    data.address = form.data["address"]
    data.city = form.data["city"]
    data.state = form.data["state"]
    data.postal_code = form.data["postal_code"]
    data.country = form.data["country"]
    data.phone= form.data["phone"]
    data.email = form.data["email"]
    data.save()

    # this was the solution
    user.first_name = form_data['first_name']
    user.last_name = form_data['last_name']
    user.save()
    # end solution

from registration.signals import user_registered
user_registered.connect(user_created)

どんな助けでも大歓迎です。登録にdjango-registrationを使用しています。

4

1 に答える 1

1

userをuser_createdに渡すので、次のように変更するだけで済みます。

data.first_name = user.first_name = form.data["first_name"]
data.last_name = user.last_name = form.data["last_name"]

....

user.save()

何かが足りないかもしれませんが、実際にuser_createdのuserにアクセスできる場合は、機能するはずです。userの代わりにrequest.userを使用して同じことを行うこともできます。

于 2012-04-04T20:52:11.387 に答える