Вопрос по – Сохранение профиля с регистрацией в Django-Registration

14

В Django-Registration говорится, что вы можете сохранить пользовательский профиль при сохранении пользователя.
Но я понятия не имею, что документация просит меня сделать. Вот что они говорят:

To enable creation of a custom user profile along with the User (e.g., the model specified in the AUTH_PROFILE_MODULE setting), define a function which knows how to create and save an instance of that model with appropriate default values, and pass it as the keyword argument profile_callback. This function should accept one keyword argument:

user

The User to relate the profile to.

Может кто-нибудь дать мне пример функции, которую нужно создать, и как передать ее в качестве аргумента?

Ваш Ответ

3   ответа
1

кто сталкивался с этой проблемой, я думаю, что этот блог является хорошим руководством:http://johnparsons.net/index.php/2013/06/28/creating-profiles-with-django-registration/.

6

Это покрытоэтот пост и расширен в моем ответедругой вопрос по тому же вопросу

Django-регистрация посылает сигнал при различных событиях, происходящих - регистрация и активация. В любой из этих точек вы можете создать привязку к тому сигналу, который будет дан пользователю и запрашивать объекты - оттуда вы можете создать профиль для этого пользователя.

Сигнал от джанго-регистрации

#registration.signals.py 
user_registered = Signal(providing_args=["user", "request"]) 

Код для создания профиля

#signals.py (in your project)
user_registered.connect(create_profile)

def create_profile(sender, instance, request, **kwargs):
    from myapp.models import Profile
    #If you want to set any values (perhaps passed via request) 
    #you can do that here

    Profile(user = instance).save()
8

Вы можете передать функцию обратного вызова в вашем файле urls.py.

from mysite.profile.models import UserProfile


url( r'^accounts/register/$',      'registration.views.register',
        { 'profile_callback': UserProfile.objects.create }, name = 'registration_register' ),

Замените свою собственную функцию для UserProfile.objects.create по мере необходимости.

Ну, мне нужно сделать то же самое ... но я могу понять, как плохо показывать форму профиля в месте образца формы регистра и сохранять данные ... я не знаю, что я потерян ... спасибо
Это больше не касается django-регистрации 0.8+

Похожие вопросы