gpt4 book ai didi

python - 如何获取通常在 Django 中递增的字段的默认值?

转载 作者:太空宇宙 更新时间:2023-11-03 14:27:10 24 4
gpt4 key购买 nike

我正在编写一个小的会计软件。一个功能是创建账单。这些账单有一个序列号,该序列号应该随每张账单递增。但有时我需要在这个系统之外创建一个,所以我需要能够更改值。所以我正在寻找的是一种在 Django admin 中使用默认值的整数字段的方法,该字段始终是最大值 + 1,但可以编辑。不幸的是我不知道从哪里开始。我该怎么做?

最佳答案

您可以使用默认的函数或 lambda 表达式来实现:

class Bill(models.Model):
serial = models.IntegerField(default=lambda: Bill.objects.latest('id').serial + 1)
# ...

基本上,获取最新型号,并使用其序列号(加一)作为默认值。如果您的序列号是整数,这将起作用,否则您将不得不使用自己的逻辑。另请注意 .latest()如果数据库中没有任何账单,将引发 DoesNotExist。

关于python - 如何获取通常在 Django 中递增的字段的默认值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18541886/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com