Django Don';t queryset记录保存时是否获取ID?

Django Don';t queryset记录保存时是否获取ID?,django,django-queryset,Django,Django Queryset,在Rails和symfony with Doctrine中,您可以保存一条记录,然后获得该记录的id。例如: b = Bank.new b.save #b.id now has a value 但在Django,这显然不是它的工作原理: >>> b = Bank() >>> b.name = "Fred's Bank" >>> b.identifier = "fred" >>> b.save() >>>

在Rails和symfony with Doctrine中,您可以保存一条记录,然后获得该记录的id。例如:

b = Bank.new
b.save
#b.id now has a value
但在Django,这显然不是它的工作原理:

>>> b = Bank()
>>> b.name = "Fred's Bank"
>>> b.identifier = "fred"
>>> b.save()
>>> b.id
>>> b.id.__class__
<type 'NoneType'>
>>>
>b=Bank()
>>>b.name=“弗雷德银行”
>>>b.identifier=“弗雷德”
>>>b.保存()
>>>身份证
>>>b.id.\uuu类__
>>>

如您所见,
b.id
的计算结果为零。如果需要,是否必须返回并选择id?这将是一个麻烦,尤其是对于有很多列的表。

这就是它在Django中的工作方式。假设
Bank
是一个Django模型,它在保存时确实会获得一个ID,而当前实例反映了这一点。我无法想象你做了什么来打破这个局面。您需要发布银行模型的代码。

好的,为了澄清,
b.id
应该向我显示已保存记录的id吗?如果是这样的话,我只需要知道这些。我有一些想法,我可以在哪里打破它。