class SampleReception(models.Model):
'''样品登记表'''
location = models.ForeignKey(Branch, on_delete=models.CASCADE, null=True, blank=True, verbose_name="地点")
sample_number = models.CharField(u'样品编号', max_length=32, null=True, blank=True, help_text="本行为系统自动创建")
report_number = models.CharField(u'报告编号', max_length=32, null=True, blank=True)
order_number = models.CharField(u'委托单号', max_length=32, null=True, blank=True)
sample_name = models.CharField(u'样品名称', max_length=64, null=True, blank=True)
client = models.CharField(u'委托单位', max_length=128, null=True, blank=True)
reception_time = models.DateField(u"接收日期", auto_now=False, null=True, blank=True)
time = models.TimeField("接收时间", auto_now=False, null=True)
description = models.CharField(u'状态描述', max_length=256, null=True, blank=True,
help_text=u"外观,标识等信息等...")
sample_grade = models.CharField(u'样品规格', max_length=32, null=True, blank=True)
sample_register = models.CharField(u'收样人', max_length=32, null=True, blank=True)
disposal_type = models.CharField(u'处置方式', max_length=32, null=True, blank=True, default="客户取回")
remark = models.CharField(u'备注', max_length=128, null=True, blank=True)
def save(self, *args, **kwargs):
if self.pk:
self.sample_number = str(self.location.location_code) + '50' + str(self.id) + '/' + str(localtime)
super(SampleReception, self).save(*args, **kwargs)
现在的问题是新增加一行时,样品编号是空的,必须再次打开并且保存才能生成样品唯一性编号,诸位有没有什么好的解决方法?
要看你的前端还有view怎么写的,应该是没有刷新页面,或者更新编号的js代码有问题
你在create的时候pk还未创建