我有一个用户模型。我想要的是当用户注册时,松弛字段中填充了来自使用用户电子邮件作为参数的函数的数据。(基本上 slack 应该是从电子邮件生成的类似“DS8ds9D”的东西。我有执行“get_slack(email)”的功能,我知道如果使用电子邮件在模型外部运行它会起作用。我得到的错误是当我尝试“makemigrations”时说来自“get_slack(email)”的电子邮件为空。class User(AbstractBaseUser, PermissionsMixin): email = models.EmailField(unique=True) is_staff = models.BooleanField(default=False) is_active = models.BooleanField(default=True) date_joined = models.DateTimeField(default=timezone.now) first_name = models.CharField(max_length=255) last_name = models.CharField(max_length=255) slack = models.CharField(max_length=255, default=get_slack(email))我认为很清楚我要建立什么,但是我使用“默认”的方法可能不合适。有什么建议么?谢谢。
1 回答
鸿蒙传说
TA贡献1865条经验 获得超7个赞
如果你想在用户注册时创建松弛字段,你应该覆盖默认的保存方法。
class User(AbstractBaseUser, PermissionsMixin): # ... def save(self, *args, **kwargs): self.slack = self.image # do whatever processing you want super(User, self).save(*args, **kwargs)
添加回答
举报
0/150
提交
取消