Django admin auto字段带前缀



我有一个自动字段,用于创建票号。然而,仅仅数字本身看起来就非常联合国专业。我该怎么加上& #0000"在auto字段前面每当数字超过1或2位数时就会出现"0";需要填充。希望这对你有意义。

Ticket_Number = models.AutoField(primary_key=True,)

def save(self, *args, **kwargs):
self.Ticket_Number = '#0000' + self.Ticket_Number
return super(SupportTicket, self).save(*args, **kwargs)

您可以覆盖模型的save方法来实现这一点:

def save(self, *args, **kwargs):
self.Ticket_Number = '#0000' + self.Ticket_Number
return super(TicketModel, self).save(*args, **kwargs)

未测试,抱歉!你可能会有一些转换添加…

def save(self):
if not self.Ticket_Number:
lenn = len(SupportTicket.objects.all()) + 1
prefix = "#000000"
self.Ticket_Number = prefix[:-len(str(lenn))] + str(lenn)
super(SupportTicket, self).save()