【发布时间】:2020-02-24 17:06:54
【问题描述】:
在这里,我基本上使用 Django 饼干切割器,为了能够使用自定义形状标志进行保存,我必须以这种方式进行,它有效,我不确定这是正确的继续方式,但我只找到了这个。我也用 def Signup() 进行了测试,但没有结果但是我意识到用户没有直接保存在数据库中,我在 alt_user 和 alt_user.name 之间放置了一个计时器。我注意到 User.object.get 给了我用户并且我可以修改用户的其余信息。但是当我查看我的数据库时,用户的备份只有在用户返回后才完成。用户是否在备份前被缓存?它带来的问题以及在保存 Alt_user.save() 后我会在芹菜任务中发送一个的 id 以进行更长的计算,提前谢谢你
User = get_user_model()
class CustomSignupForm(SignupForm):
name = CharField( max_length=255)
forename = CharField( max_length=255)
street = CharField( max_length=255)
street_number = IntegerField()
city = CharField(max_length=255)
country = CountryField().formfield()
phone_number = IntegerField()
date_of_birth = DateField()
affiliate_link = IntegerField(required=False)
class Meta:
model = get_user_model() # use this function for swapping user model
def save(self, request):
# Ensure you call the parent class's save.
# .save() returns a User object.
user = super(CustomSignupForm, self).save(request)
alt_user = User.objects.get(pk=user.id)
time.sleep(30)
alt_user.name = self.cleaned_data['name']
alt_user.forename = self.cleaned_data['forename']
alt_user.street = self.cleaned_data['street']
alt_user.street_number = self.cleaned_data['street_number']
alt_user.city = self.cleaned_data['city']
alt_user.country = self.cleaned_data['country']
alt_user.phone_number = self.cleaned_data['phone_number']
alt_user.date_of_birth = self.cleaned_data['date_of_birth']
alt_user.save()
calculate_user_in_matrix.delay(alt_user.id)
return user
【问题讨论】:
标签: django python-3.x django-allauth