Python Django:保存用户配置文件

Python Django:保存用户配置文件,python,django,python-2.x,user-profile,Python,Django,Python 2.x,User Profile,这是非常基本的,但我找不到任何东西。我有以下方式定义的用户配置文件: def create_user_info(sender, instance, created, **kwargs): if created: UserInfo.objects.create(user=instance) User.profile = property(lambda u: UserProfile.objects.get_or_create(user=u)[0]) 现在如何设置属性?首先

这是非常基本的,但我找不到任何东西。我有以下方式定义的用户配置文件:

def create_user_info(sender, instance, created, **kwargs):
    if created:
        UserInfo.objects.create(user=instance)

User.profile = property(lambda u: UserProfile.objects.get_or_create(user=u)[0])

现在如何设置属性?

首先。猴子补丁
User
不是正确的方法。在settings.py中设置
AUTH\u PROFILE\u MODULE='yourapp.UserInfo'
,然后您可以使用
user\u instance.get\u PROFILE()
自动获取配置文件

因此,要修改配置文件,只需执行以下操作:

profile = user.get_profile()
profile.some_field = 'some value'
profile.save()

首先。猴子补丁
User
不是正确的方法。在settings.py中设置
AUTH\u PROFILE\u MODULE='yourapp.UserInfo'
,然后您可以使用
user\u instance.get\u PROFILE()
自动获取配置文件

因此,要修改配置文件,只需执行以下操作:

profile = user.get_profile()
profile.some_field = 'some value'
profile.save()

谢谢,出于某种原因,所有这些网站都说这是一种更好的方法(使代码更干净),但我把它改回了Django文档所说的。在Django 1.5中,AUTH_PROFILE_模块被弃用:谢谢,出于某种原因,所有这些网站都说这是一种更好的方法(使代码更干净),但是我把它改回了Django文档中所说的内容。在Django 1.5中,AUTH_PROFILE_模块不推荐使用: