Как избежать создания внешних ключей на моделях Django? - PullRequest
0 голосов
/ 26 сентября 2011

когда я создаю модель с отношением внешнего ключа, что-то вроде этого:

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.Я ненавижу внешние ключи по разным причинам.

Спасибо!

РЕДАКТИРОВАТЬ:

Пожалуйста, ребята, не отвечайте: "Вы должны использовать иностранныеключи».Это не то, что я спрашиваю.У меня есть причины не использовать их.

1 Ответ

2 голосов
/ 26 сентября 2011

Пожалуйста, не надо.Внешние ключи - это то, что нужно иметь, и вы никогда не должны мешать базе данных защищать свою целостность.Если вам нужно сделать что-то особенное с таблицей (и вы точно не нарушите ее целостность), вы можете временно отключить проверки:

SET foreign_key_checks = 0
# do something
SET foreign_key_checks = 1
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...