我想保存我的数据库中的条目,以便日后删除它们。要识别他们,我把key
属性在我Entry
类models.py
,如下图所示:Django Python unique = True表达式
class Entry(models.Model):
name = models.CharField(max_length=200)
key = models.IntegerField(unique=True,default=0)
我每次启动服务器时,我会发现,在Entry.objects.all()
最大的关键。
我每次启动服务器后创建的第一个新Entry
,我想借此key
我在一开始就发现,加1,然后我的新Entry
其设置为key
。对于每个后续的Entry
,我将只取上一个元素的key
,并将其增加1。将其设置为我的新Entry
然而,在我这样做之前,我想知道Django认为什么是唯一的。例如,如果我最初使用密钥1
,2
和3
添加了三个条目,然后删除了带有密钥3
的最后一个元素。如果我然后重新启动服务器,最大key
我会发现是2
和下一个Entry
我将添加将有key
2 + 1,这又等于3
。
这是key
的独特之处吗? 之前输入过,但我删除了那个元素吧?独特性是由我过去输入的唯一性决定的,还是取决于数据库中当前的元素?
此外,没有Django的保持Entry
所有实例的轨道,我补充说,这样它会以某种方式知道如果我之前添加key
3
的Entry
?我的数据存储在一个文件
注称为db.sqlite3
谢谢。
你可能想要使用一些自动增量功能。 – tcooc 2014-10-11 09:58:41