在Django注册中使用注册保存配置文件

在Django注册中使用注册保存配置文件,django,profile,registration,Django,Profile,Registration,在Django注册中,它表示您可以在保存用户时保存自定义配置文件。 但我不知道文档要求我做什么。他们是这么说的: 要启用自定义用户配置文件和用户(例如,AUTH\u profile\u模块设置中指定的模型),请定义一个函数,该函数知道如何使用适当的默认值创建和保存该模型的实例,并将其作为关键字参数profile\u回调传递。此函数应接受一个关键字参数: 用户 将配置文件关联到的用户 有人能给我一个需要创建的函数的示例,以及如何将其作为参数传递吗?您可以在URL.py文件中传递回调函数 from

在Django注册中,它表示您可以在保存用户时保存自定义配置文件。
但我不知道文档要求我做什么。他们是这么说的:

要启用自定义用户配置文件和
用户
(例如,
AUTH\u profile\u模块
设置中指定的模型),请定义一个函数,该函数知道如何使用适当的默认值创建和保存该模型的实例,并将其作为关键字参数
profile\u回调
传递。此函数应接受一个关键字参数:

用户

将配置文件关联到的
用户


有人能给我一个需要创建的函数的示例,以及如何将其作为参数传递吗?

您可以在URL.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注册在各种事件发生时发送信号-注册和激活。在这两个点中的任何一点上,您都可以创建一个指向该信号的钩子,该信号将被提供给用户和请求对象——从那里您可以为该用户创建一个概要文件

来自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()

对于任何遇到这个问题的人,我认为这篇博文是一个很好的教程:

嗯,我也需要这样做…但是我不知道我会如何在注册表的示例位置显示配置文件表单并保存数据。。。我不知道我迷路了…谢谢这不再是django 0.8的情况+