summaryrefslogtreecommitdiff
path: root/django/db/models/sql/where.py
diff options
context:
space:
mode:
authorAnssi Kääriäinen <akaariai@gmail.com>2013-01-19 14:09:46 +0200
committerAnssi Kääriäinen <akaariai@gmail.com>2013-03-17 15:32:50 +0200
commitf403653cf146384946e5c879ad2a351768ebc226 (patch)
treecd18cadd9720eb375b65f1b6f8284c0dbe16903b /django/db/models/sql/where.py
parent3beabb5afd8df56af48461bc0f6011f2d96aa088 (diff)
Fixed #19635 -- Made fields pickleable
Diffstat (limited to 'django/db/models/sql/where.py')
-rw-r--r--django/db/models/sql/where.py24
1 files changed, 0 insertions, 24 deletions
diff --git a/django/db/models/sql/where.py b/django/db/models/sql/where.py
index ced5325754..754e33292d 100644
--- a/django/db/models/sql/where.py
+++ b/django/db/models/sql/where.py
@@ -345,30 +345,6 @@ class Constraint(object):
def __init__(self, alias, col, field):
self.alias, self.col, self.field = alias, col, field
- def __getstate__(self):
- """Save the state of the Constraint for pickling.
-
- Fields aren't necessarily pickleable, because they can have
- callable default values. So, instead of pickling the field
- store a reference so we can restore it manually
- """
- obj_dict = self.__dict__.copy()
- if self.field:
- obj_dict['model'] = self.field.model
- obj_dict['field_name'] = self.field.name
- del obj_dict['field']
- return obj_dict
-
- def __setstate__(self, data):
- """Restore the constraint """
- model = data.pop('model', None)
- field_name = data.pop('field_name', None)
- self.__dict__.update(data)
- if model is not None:
- self.field = model._meta.get_field(field_name)
- else:
- self.field = None
-
def prepare(self, lookup_type, value):
if self.field:
return self.field.get_prep_lookup(lookup_type, value)