Django 如何在用户名字段中插入id

Django 如何在用户名字段中插入id,django,django-forms,Django,Django Forms,我希望用户名字段自动填入以下内容: 用户名=电子邮件[0]+strid 其中id是用户对象的id 可能吗 谢谢:您可以使用来实现这一点 这将是一种未经测试的情况: from django.db import models class User(models.Model): email = model.EmailField() username = models.CharField(max_length=80) def save(self): if no

我希望用户名字段自动填入以下内容:

用户名=电子邮件[0]+strid

其中id是用户对象的id

可能吗

谢谢:

您可以使用来实现这一点

这将是一种未经测试的情况:

from django.db import models

  class User(models.Model):
    email = model.EmailField()
    username = models.CharField(max_length=80)

    def save(self):
      if not self.id:
           self.username = ''
           super(User, self).save()
      self.username = "%i%s" % (self.id, self.email)
      super(User, self).save()

保存对象之前,self.id不存在。我试过了,但我得到了一个错误:你是对的!我已经编辑了我的答案。现在应该可以了。很抱歉没有测试代码。