Loading django/utils/datastructures.py +12 −1 Original line number Diff line number Diff line Loading @@ -223,6 +223,17 @@ class MultiValueDict(dict): copy.deepcopy(value, memo)) return result def __getstate__(self): obj_dict = self.__dict__.copy() obj_dict['_data'] = dict([(k, self.getlist(k)) for k in self]) return obj_dict def __setstate__(self, obj_dict): data = obj_dict.pop('_data', {}) for k, v in data.items(): self.setlist(k, v) self.__dict__.update(obj_dict) def get(self, key, default=None): """ Returns the last data value for the passed key. If key doesn't exist Loading tests/regressiontests/httpwrappers/tests.py +8 −0 Original line number Diff line number Diff line Loading @@ -396,10 +396,18 @@ u'\ufffd' # Pickling a QueryDict # ######################## >>> import pickle >>> q = QueryDict('') >>> q1 = pickle.loads(pickle.dumps(q, 2)) >>> q == q1 True >>> q = QueryDict('a=b&c=d') >>> q1 = pickle.loads(pickle.dumps(q, 2)) >>> q == q1 True >>> q = QueryDict('a=b&c=d&a=1') >>> q1 = pickle.loads(pickle.dumps(q, 2)) >>> q == q1 True ###################################### # HttpResponse with Unicode headers # Loading django/http/__init__.py +1 −1 File changed.Contains only whitespace changes. Show changes Loading
django/utils/datastructures.py +12 −1 Original line number Diff line number Diff line Loading @@ -223,6 +223,17 @@ class MultiValueDict(dict): copy.deepcopy(value, memo)) return result def __getstate__(self): obj_dict = self.__dict__.copy() obj_dict['_data'] = dict([(k, self.getlist(k)) for k in self]) return obj_dict def __setstate__(self, obj_dict): data = obj_dict.pop('_data', {}) for k, v in data.items(): self.setlist(k, v) self.__dict__.update(obj_dict) def get(self, key, default=None): """ Returns the last data value for the passed key. If key doesn't exist Loading
tests/regressiontests/httpwrappers/tests.py +8 −0 Original line number Diff line number Diff line Loading @@ -396,10 +396,18 @@ u'\ufffd' # Pickling a QueryDict # ######################## >>> import pickle >>> q = QueryDict('') >>> q1 = pickle.loads(pickle.dumps(q, 2)) >>> q == q1 True >>> q = QueryDict('a=b&c=d') >>> q1 = pickle.loads(pickle.dumps(q, 2)) >>> q == q1 True >>> q = QueryDict('a=b&c=d&a=1') >>> q1 = pickle.loads(pickle.dumps(q, 2)) >>> q == q1 True ###################################### # HttpResponse with Unicode headers # Loading