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_模块不推荐使用: