关于MySQL的Django:自动创建id字段?

时间:2012-03-15 21:38:27

标签: mysql django django-models

使用MySQL,而不是像在PostgreSQL上那样自动创建rowid字段,而是“slug”字段:

slug = models.SlugField(primary_key=True, max_length=128)

用于JOIN,因为“id”字段不是在DB级别创建的。这意味着当进行JOIN时,使用“slug”FK,带有字符串数据!当然,与使用整数的JOIN相比,这是非常昂贵的。

如何让Django在MySQL上创建db-level ID字段,因为PostgreSQL会自动发生?

1 个答案:

答案 0 :(得分:2)

每个表只能有一个主键。由于您自己创建了一个,因此ORM不会为您创建一个。