3

默认情况下,Django 自动给每个模型一个idfield
django 的 ORM 是否会自动添加任何其他字段?也许在特定情况下?

4

1 回答 1

3

我只能想到其他两种情况,其中字段是自动创建的。一个是在对另一个模型进行子分类时。子类将继承父类的字段,请参见此处。另一种是多对多关系。对于 M2M 关系,不仅会创建一个字段,还会创建一个完整的中间表。同样,相关文档

id此外,如果您指定primary=True要用作主键的字段,则可以避免让 Django 创建该字段。看这里

还有一些其他模型/数据库命名约定。例如,实际的数据库表名将以包含它们的 Django 应用程序名称和下划线作为前缀。例如,在名为Author的应用程序中命名的模型library将被调用library_author。我相信还有其他例子,所以这不是一个详尽的列表。

于 2013-10-29T19:57:59.023 回答