当我使用用户数据创建一个UserProfile时,我想传递给first\u name和last\u name。你知道吗
这是我的型号.py你知道吗
class UserProfile(models.Model):
user = models.OneToOneField(settings.AUTH_USER_MODEL)
first_name = models.CharField(max_length=200, blank=True, null=True, default=None)
last_name = models.CharField(max_length=200, blank=True, null=True, default=None)
def post_save_user(sender, instance, created, **kwargs):
if created:
UserProfile.objects.create(user=instance)
post_save.connect(post_save_user, sender=settings.AUTH_USER_MODEL)
我用UserProfile.objects.create(user=instance, first_name=instance.first_name, last_name=instance.last_name)
尝试过,它创建了配置文件,但没有添加名字和姓氏。你知道吗
问题:如何使用用户数据将名字和姓氏添加到配置文件中?你知道吗
你不指望会有魔法发生,是吗?尝试用以下方式扩展信号接收器:
但是,老实说,这个答案属于垃圾桶:正如@danielroseman已经指出的,您存储了多余的数据。如果您真的希望有一个单独的
UserProfile
模型,请考虑将first_name
和last_name
设为@property
(可能与@_.setter
)并使用auth.User
模型中存储的数据进行操作。你知道吗相关问题 更多 >
编程相关推荐