Opened 19 years ago
Last modified 12 years ago
#154 closed defect
Can't delete object with ManytoMany Relationship — at Version 5
Reported by: | Dobbes | Owned by: | Adrian Holovaty |
---|---|---|---|
Component: | contrib.admin | Version: | |
Severity: | normal | Keywords: | |
Cc: | Triage Stage: | Accepted | |
Has patch: | no | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description (last modified by )
If you have an object with a manytomany relationship you can't delete it within the admin interface. As it spits out this error.
Traceback (most recent call last): File "/home/punteney/dobbes.com/django/core/handlers/modpython.py", line 214, in get_response return callback(request, **param_dict) File "/home/punteney/dobbes.com/django/views/admin/main.py", line 1057, in delete_stage obj.delete() File "/home/punteney/dobbes.com/django/core/meta.py", line 57, in _curried return args[0](*(args[1:]+moreargs), **dict(kwargs.items() + morekwargs.items())) File "/home/punteney/dobbes.com/django/core/meta.py", line 760, in method_delete cursor.execute("DELETE FROM %s WHERE %s=%%s" % (opts.db_table, opts.pk.name), [getattr(self, opts.pk.name)]) File "/home/punteney/dobbes.com/django/core/db/base.py", line 10, in execute result = self.cursor.execute(sql, params) IntegrityError: ERROR: update or delete on "blog_entries" violates foreign key constraint "$1" on "blog_entries_categories" DETAIL: Key (id)=(2) is still referenced from table "blog_entries_categories". DELETE FROM blog_entries WHERE id=2
This is from trying to delete a blog entry that is tied to the categories. The line in the Entry model is:
meta.ManyToManyField(Category, filter_interface=meta.HORIZONTAL),
I can't remove the category linking before I delete it as it is a required field so it comes back with an error message saying that the field is required.
Change History (5)
comment:1 by , 19 years ago
comment:2 by , 19 years ago
Status: | new → assigned |
---|
comment:3 by , 19 years ago
milestone: | → Version 1.0 |
---|
comment:4 by , 19 years ago
Description: | modified (diff) |
---|
comment:5 by , 19 years ago
Description: | modified (diff) |
---|
Note:
See TracTickets
for help on using tickets.
This problem manifests in the core flatfiles interface - you can't delete a flatfile as it must contain a many to many reference to a site.