我希望能够将图片保存到用户甚至是描述,这些可以是可选的,但是如何添加到模型中。我不想进入django的源代码来改变它,我可以覆盖一个模型添加字段,如果是这样的话?
如何在views.py文件中访问这些accounts.UserProfile和accounts.UserProfile.image
我安装了django-registration
答案 0 :(得分:1)
来自文档:
如果您想存储与您的用户相关的其他信息,Django提供了一种方法来指定特定于站点的相关模型 - 称为“用户配置文件” - 用于此目的。
要使用此功能,请定义一个模型,其中包含您要存储的其他信息的字段,或者您希望提供的其他方法,还要将模型中的OneToOneField命名用户添加到用户模型。这将确保只能为每个用户创建一个模型实例。例如:
from django.contrib.auth.models import User
class UserProfile(models.Model):
# This field is required.
user = models.OneToOneField(User)
# Other fields here
accepted_eula = models.BooleanField()
favorite_animal = models.CharField(max_length=20, default="Dragons.")
要表明此模型是给定站点的用户配置文件模型,请使用由以下项组成的字符串填写设置AUTH_PROFILE_MODULE,并用点分隔:
例如,如果配置文件模型是名为UserProfile的类,并且在名为accounts的应用程序中定义,则适当的设置为:
AUTH_PROFILE_MODULE = 'accounts.UserProfile'