Django

Code

Changeset 6506

Show
Ignore:
Timestamp:
10/13/07 23:17:02 (1 year ago)
Author:
gwilson
Message:

Fixed #5744 -- Allowed SortedDict contructor to be passed a list of tuples to match the interface of dict, thanks Thomas Güttler.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/django/utils/datastructures.py

    r6383 r6506  
    5555        if data is None: data = {} 
    5656        dict.__init__(self, data) 
    57         self.keyOrder = data.keys() 
     57        if isinstance(data, dict): 
     58            self.keyOrder = data.keys() 
     59        else: 
     60            self.keyOrder=[key for key, value in data] 
    5861 
    5962    def __setitem__(self, key, value): 
  • django/trunk/tests/regressiontests/datastructures/tests.py

    r5876 r6506  
    5656{'one': 'not one', 'two': 'two', 'three': 'three'} 
    5757 
     58Init from sequence of tuples 
     59>>> d = SortedDict(( 
     60... (1, "one"), 
     61... (0, "zero"), 
     62... (2, "two"))) 
     63>>> print repr(d) 
     64{1: 'one', 0: 'zero', 2: 'two'} 
     65 
    5866### DotExpandedDict ############################################################ 
    5967