Джанго ложно утверждает, что "нет уникального ограничения, соответствующего данным ключам для ссылочной таблицы"
Если я добавлю следующий класс в мою модель, все отлично работает при миграции.
class BeursCheck(models.Model):
order = models.IntegerField(default=None)
painting = models.ForeignKey(Painting, related_name='beursCheck',primary_key=True)
Однако, если я добавлю это поле..
mturk_assignment = models.ForeignKey(
'mturk.MtAssignment', null=True, blank=True,
related_name='+', on_delete=models.SET_NULL, unique=True
)
Сбой с ошибкой
django.db.utils.ProgrammingError: there is no unique constraint matching given keys for referenced table "mturk_mtassignment"
Это поле относится к MtAssignemnt, который имеет уникальный ключ. На этот ответ ответил даже так.
class MtAssignment(MtModelBase):
id = models.CharField(max_length=128, primary_key=True)
1 ответ
Попробуйте изменить на:
from mturk.models import MtAssigmnet
mturk_assignment = models.ForeignKey(
MtAssignment, null=True, blank=True,
related_name='+', on_delete=models.SET_NULL
)