当我创建一个具有外键关系的模型时,如下所示:
class Post(models.Model):
title = models.CharField(max_length=250)
date_created = models.DateTimeField(auto_now=False, auto_now_add=True)
owner = models.ForeignKey(User)
当我执行syncdb将这些模型转储到数据库时,它会创建表post
和表user
的外键。如何避免在MySQL中创建该外键。我出于不同的原因讨厌外键。
谢谢!
修改
请大家,不要回答:“你应该使用外键”。那不是我要问的。我有理由不使用它们。
答案 0 :(得分:2)
请不要。外键是正确的,你永远不应该阻止数据库保护自己的一致性。如果您需要对表执行特殊操作(并确保不破坏其完整性),您可以暂时禁用检查:
SET foreign_key_checks = 0
# do something
SET foreign_key_checks = 1