Opened 14 years ago
Closed 14 years ago
#16080 closed Bug (fixed)
list_filter broken for fields with lenght 2
| Reported by: | Ales Zoulek | Owned by: | nobody |
|---|---|---|---|
| Component: | contrib.admin | Version: | dev |
| Severity: | Release blocker | Keywords: | list_filter admin |
| Cc: | Triage Stage: | Accepted | |
| Has patch: | yes | Needs documentation: | no |
| Needs tests: | no | Patch needs improvement: | no |
| Easy pickings: | no | UI/UX: | no |
Description
Commit 16144 broke list_filter refering to model fields, when its name is just 2 chars long.
Consider admin options class having
class VenueOptions(admin.ModelAdmin)
list_filter = ('at', 'when',)
Then in django/contrib/admin/validation.py loops over items in list_filter this way:
# item = 'at'
#....
76 try:
77 # Check for option #2 (tuple)
78 field, list_filter_class = item
79 except (TypeError, ValueError):
80 # item is option #1
81 field = item
The check for tuple will fail, since the result would be
field, list_filter_class = 'at' # results in: field = 'a' list_filter_class = 't'
(Tested on svn rev: 16270)
Attachments (1)
Change History (4)
comment:1 by , 14 years ago
| Easy pickings: | set |
|---|---|
| Needs tests: | set |
| Severity: | Normal → Release blocker |
| Triage Stage: | Unreviewed → Accepted |
by , 14 years ago
| Attachment: | 16080.two-character-listfilter.diff added |
|---|
comment:2 by , 14 years ago
| Easy pickings: | unset |
|---|---|
| Has patch: | set |
| Needs tests: | unset |
Note:
See TracTickets
for help on using tickets.
Fix + tests