在我的项目中,登录后,用户必须经过几个过程来输入他们的个人资料,上传一些文件
现在我已经完成了身份验证过程
我的 UserProfile 中只有三个文件
模型.py
class UserProfile(models.Model):
user = models.OneToOneField(User)
#activation_key is used in my account registration process
activation_key = models.CharField(max_length=40)
#activation link should be only valid for one day
key_expires = models.DateTimeField()
def __unicode__(self):
return self.user.username
这三个文件足以使认证过程正常工作。
最初在我的数据库设计中,我使用其他表来保存个人详细信息和文件(因为我还不知道我应该使用 UserProfile 来保存用户的其他数据)。但是在通过身份验证过程并在 stackoverflow 中遇到许多帖子之后,似乎我应该将数据放在 UserProfile 表中。
所以我的问题是,
UserProfile 是否可以包含身份验证过程的数据(例如activation_key key_expire_date)和特定数据,例如名称、国家、图片?(现在我的 UserProfile 仅包含身份验证过程的数据)
在这种情况下,现在添加新字段或创建另一个表来保存附加信息,哪个是 Django 项目的更好做法?
如果我向 UserProfile 添加新字段,它会影响我以前的身份验证功能吗?(我有点担心 profile.save() 问题..)
非常感谢您的澄清。