#10770 closed (duplicate)
IntegrityError when creating multiple inline objects with ForeignKey and unique_together
| Reported by: | rutt | Owned by: | nobody |
|---|---|---|---|
| Component: | contrib.admin | Version: | 1.1-beta |
| Severity: | Keywords: | ||
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | no | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
Using the models below, enter two Attachment objects with the same slug on the Parent change page, and then save. The result is an IntegrityError where "columns parent_id, slug are not unique". If the two Attachment objects are created and saved individually, the admin shows the expected form error: "Attachment with this Parent and Slug already exists."
Models:
class Parent(models.Model):
name = models.CharField(max_length=200)
class Attachment(models.Model):
name = models.CharField(max_length=200)
parent = models.ForeignKey(Parent)
slug = models.SlugField()
class Meta:
unique_together = ['parent', 'slug']
Admin:
class ParentAdmin(admin.ModelAdmin):
inlines = [AttachmentInline]
admin.site.register(Attachment, admin.ModelAdmin)
admin.site.register(Parent, ParentAdmin)
Note:
See TracTickets
for help on using tickets.
See also #10769