Opened 18 years ago
Closed 18 years ago
#3678 closed (fixed)
BaseForm loses field sorting
Reported by: | Chris Beaven | Owned by: | Adrian Holovaty |
---|---|---|---|
Component: | Forms | Version: | dev |
Severity: | Keywords: | ||
Cc: | Triage Stage: | Ready for checkin | |
Has patch: | yes | Needs documentation: | no |
Needs tests: | no | Patch needs improvement: | no |
Easy pickings: | no | UI/UX: | no |
Description
Came across this in a project just now when I had overridden BaseForm
for a special form of my own. The fields were coming out in a different order from what I had specified.
The reason is that the __init__
of BaseForm
does:
self.fields = self.base_fields.copy()
Even if base_fields
is a SortedDict
, .copy()
is just the normal dict function so fields becomes a dict
class and loses field sorting.
Simple patch attached.
Attachments (1)
Change History (4)
by , 18 years ago
Attachment: | baseform_sorteddict.patch added |
---|
comment:1 by , 18 years ago
Triage Stage: | Unreviewed → Ready for checkin |
---|
comment:2 by , 18 years ago
comment:3 by , 18 years ago
Resolution: | → fixed |
---|---|
Status: | new → closed |
(In [4688]) Fixed #3678 -- Implemented SortedDict.copy().
Note:
See TracTickets
for help on using tickets.
You're trying to fix this in the wrong place. We should fix the
copy()
method for SortedDict classes. I'll commit a fix shortly.