我想自动发送3位数字字符和4位数的发票号码。
类发票: invoice_no = models.CharField(max_length = 500,null = True,blank = True,validators = [RegexValidator(regex ='^ [a-zA-Z0-9] * $',message ='发票必须为字母数字' ,code ='invalid_invoice number'),])我在后端注册这个模型。但现在当我点击管理员的创建发票时,发票应该是自动填充的。当我再次点击管理员中的新发票时,发票号应增加1,应为自动字段。
发票编号MAG0001,MAG0002,MAG0003等,当我点击创建新发票时,这应该是admin中的auto field。
解决方案定义一个函数来生成发票号码。 $ p $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ $ )如果不是last_invoice:返回'MAG0001' invoice_no = last_invoice.invoice_no invoice_int = int(invoice_no.split('MAG')[ - 1])$ b $ b new_invoice_int = invoice_int + 1 new_invoice_no ='MAG'+ str(new_invoice_int)返回new_invoice_no
现在使用此函数作为模型库中的默认值。
invoice_no = models.CharField(max_length = 500 ,default = increment_invoice _number,null = True,blank = True)这只是一个想法。修改功能以匹配您首选的发票编号格式。
I want to auto increament the invoice number which is 3 digits char and 4 digits number.
class Invoice: invoice_no = models.CharField(max_length=500, null=True, blank=True, validators=[RegexValidator(regex='^[a-zA-Z0-9]*$',message='Invoice must be Alphanumeric',code='invalid_invoice number'),])I register this model in backend. But now when i click on create invoice in admin the invoice should be auto filled. When i again click on create new invoice in admin, the invoice_number should be incremented by one and should be auto field.
Ex for Invoice number MAG0001, MAG0002, MAG0003 etc and this should be auto field in admin when i click on create new invoice.
解决方案Define a function to generate invoice number.
def increment_invoice_number(): last_invoice = Invoice.objects.all().order_by('id').last() if not last_invoice: return 'MAG0001' invoice_no = last_invoice.invoice_no invoice_int = int(invoice_no.split('MAG')[-1]) new_invoice_int = invoice_int + 1 new_invoice_no = 'MAG' + str(new_invoice_int) return new_invoice_noNow use this function as default value in your model filed.
invoice_no = models.CharField(max_length = 500, default = increment_invoice_number, null = True, blank = True)This is just an idea. Modify the function to match your preferred invoice number format.
更多推荐
自动发票在django后端发票新的发票
发布评论