0

我的 mysql 数据库和 django 有一个奇怪的问题。

我使用从现有数据库中导入的模型创建了一个应用程序,该模型使用 inspectdb。它工作正常,直到昨天我删除了 django 自动创建的表(django_ 、auth_、site_*)。我这样做是因为当我在已安装的应用程序中添加我的应用程序时,它会阻止我的模型进行验证。

现在,今天我尝试在我的数据库中插入一条新记录,但出现以下错误:

Django Version:     1.3
Exception Type:     IntegrityError
Exception Value: (1048, "Column 'asset_id' cannot be null")

该字段是一个主键,它应该是 auto_increment 所以我在创建新记录时不给它一个值。

有人能指出我这里发生了什么吗?

编辑:我部分地发现了问题:不知何故,我所有的 auto_increment 属性都从我的数据库中删除了。那是怎么发生的 ?

4

2 回答 2

0

检查您生成的模型,并确保“auto_increment”列与标有primary_key=True选项的字段相对应。

于 2011-08-12T11:24:24.500 回答
0

id在获取属性之前,您可能需要保存对象模型。

于 2013-07-04T19:45:16.593 回答