我正在使用 object.create 将记录存储到 django 数据库:
result = MyObject.objects.create(var1='foo',
var2='bar',
...
)
在此执行之后result
是返回的任何字符串__str__
(我通过将其更改为 来确认这一点return self.id
)。我想访问主键值,因为在某些情况下,下一步是创建另一条记录,该记录通过外键引用该记录,但我真的很想__str__
返回比这更有意义的东西。
我意识到我可以抓取最近创建的,但这将是具有多个并发用户的线程代码,因此有可能以真正不幸的方式失败。
我正在使用 SQLite db 进行开发,但将切换到 MySQL 进行生产,所以如果有一种方法可以解决这个需要 mySQL 的问题,我现在可以进行切换。
更新 - 没关系
好吧,我知道发生了什么。在第一次通过调用创建时不会发生,虽然result
被定义它不是一个对象。
谢谢大家。进一步挖掘以回应您的评论是导致我找到它的原因。
<尴尬地溜走>