1

以下代码:

>>> from mainapp.models import ServerType
>>> server_type = ServerType()
>>> server_type.name = 'Origin'
>>> server_type.save()
>>> server_type.id
4L

生成mysql日志:

SET NAMES utf8
set autocommit=0
SET SQL_AUTO_IS_NULL = 0
INSERT INTO `ServerType` (`name`, `description`) VALUES ('Origin', '')
commit

没有额外的 select 语句,django 怎么知道新的 id?

django=1.4

mysql=5.1

4

1 回答 1

2

数据库适配器总是在插入语句中以新的主键响应。无需额外查询。

于 2013-09-20T19:10:59.560 回答