Opened 8 years ago

Last modified 8 years ago

#26777 closed Bug

Cannot add foreign key constraint when migrating manytomany field — at Initial Version

Reported by: Ville Säävuori Owned by: nobody
Component: Migrations Version: 1.9
Severity: Normal Keywords:
Cc: Simon Charette Triage Stage: Unreviewed
Has patch: no Needs documentation: no
Needs tests: no Patch needs improvement: no
Easy pickings: no UI/UX: no

Description

I have a model that looks like

class LiveEvent(models.Model):
    id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False)

    ...

    attendees = models.ManyToManyField(User, blank=True, related_name="events_attended")

    ...

    notify_subscriptions = models.ManyToManyField(User, blank=True, related_name="events_subscribed")

when trying to add and migrate notify_subscriptions field I get an django.db.utils.IntegrityError: (1215, 'Cannot add foreign key constraint') error. When adding

'OPTIONS': {
            "init_command": "SET foreign_key_checks = 0;",
        },

to database settings , the error becames: django.db.utils.OperationalError: (1825, "Failed to add the foreign key constraint on table 'levan_liveevent_notify_subscriptions'. Incorrect options in FOREIGN KEY constraint 'slipmat/levan_liveevent_noti_liveevent_id_a4871abc_fk_levan_liveevent_id'")

the migration file looks like:

    operations = [
        migrations.AddField(
            model_name='liveevent',
            name='notify_subscriptions',
            field=models.ManyToManyField(blank=True, related_name='events_subscribed', to=settings.AUTH_USER_MODEL),
        ),
    ]

I'm using MySQL version 5.6.27 and Django version 1.9.7

Change History (0)

Note: See TracTickets for help on using tickets.
Back to Top