django UserProfile和RegistrationProfile:相同型号或不同型号

时间:2017-12-13 19:27:43

标签: python django django-models

所以我正在制作一个网站,要求我注册用户并要求他们的电子邮件和用户名并验证电子邮件。之后我要求他们填写个人资料表格,其中包含姓名,年龄,性别,图像等信息那么我应该为UserProfile和RegistrationProfile创建单独的模型,还是在同一模型中创建

1 个答案:

答案 0 :(得分:0)

如果您使用用户模型创建OneToOneField并且可以使用用户模型的post_save信号为您的用户创建配置文件实例,那将是非常棒的。

from django.db import models
from django.db.models.signals import post_save
from django.dispatch import receiver

class Profile(models.Model):
    user = models.OneToOneField(User)
    ...


@receiver(post_save, sender=User)
def create_user_profile(sender, instance, created, **kwargs):
    if created:
        Profile.objects.create(user=instance)