Имам стари база данни с таблица, съхраняваща много от много отношения, но без единична колона за първичен ключ. Има ли начин да убедиш Джанго да го използва все пак?
Схематично:
Product 1<---->* Labeling *<---->1 Label
Най- Labeling
използваните таблици (product_id,label_id)
като комбиниран първичен ключ и не виждам никакъв начин да информирам Джанго за това. (Просто използвайте through
дава ми Unknown column "labeling.id" in "field list"
.)
Трябва ли да се върна към персонализирания SQL? Или ми липсва нещо?
Отговори:
1 за отговор № 1Надявам се това да ви помогне,
http://docs.djangoproject.com/en/dev/ref/models/options/#unique-together
http://docs.djangoproject.com/en/dev/ref/models/fields/#django.db.models.Field.db_index
1 за отговор № 2
Ако добавите a unique_together
към модела за таблицата "много към много", Джанго ще използва тези колони, вместо да очаква главен ключ id
.