#34376 closed Bug (worksforme)
Admin has no support for unique constraint fields.
| Reported by: | Alex Urbanowicz | Owned by: | nobody | 
|---|---|---|---|
| Component: | contrib.admin | Version: | 4.1 | 
| Severity: | Normal | Keywords: | sqlite unique admin | 
| Cc: | Triage Stage: | Unreviewed | |
| Has patch: | no | Needs documentation: | no | 
| Needs tests: | no | Patch needs improvement: | no | 
| Easy pickings: | no | UI/UX: | no | 
Description (last modified by )
The context is an Admin based application - all database operations are done using Admin. The backend is SQLite.
One of the fields in the application is a field for an (unique) ip address:
ip = models.GenericIPAddressField(protocol='IPv4', unique=True)
When there's an attempt to enter duplicate IP address, the application crashes to a 500 error:
django.db.utils.IntegrityError: UNIQUE constraint failed: <table>.ip
Attempt at handling that error by catching the exception and emitting an message leads to another error:
django.db.transaction.TransactionManagementError: An error occurred in the current transaction. You can't execute queries until the end of the 'atomic' block.
I would expect that, since the ORM supports unique fields, there's some Admin UI to handle constraint errors in a similar way to validation errors, and not fall flat and give the user a 500 error.
Attachments (1)
Change History (3)
comment:1 by , 3 years ago
| Description: | modified (diff) | 
|---|
comment:2 by , 3 years ago
| Resolution: | → worksforme | 
|---|---|
| Status: | new → closed | 
| Summary: | Admin has no support for unique constraint fields (while using SQLite?) → Admin has no support for unique constraint fields. | 
| Type: | Uncategorized → Bug | 
Thanks for the report, however it works for me, see simplescreenrecorder-2023-03-01_19.13.17.mp4.
by , 3 years ago
| Attachment: | simplescreenrecorder-2023-03-01_19.13.17.mp4 added | 
|---|
s/append/attempt/