summaryrefslogtreecommitdiff
path: root/django/core/serializers/python.py
diff options
context:
space:
mode:
authorBoulder Sprinters <boulder-sprinters@djangoproject.com>2007-03-09 17:43:46 +0000
committerBoulder Sprinters <boulder-sprinters@djangoproject.com>2007-03-09 17:43:46 +0000
commit0b7dd14d1f87e2ecef7aacc39fe4189667ed4fdf (patch)
treeb77497f9de324d38a9c6341e54d2742633e20055 /django/core/serializers/python.py
parente17f75551491f5b864c1fc8a97c21d0b2bbf0bcd (diff)
boulder-oracle-sprint: Merged to trunk [4692].
git-svn-id: http://code.djangoproject.com/svn/django/branches/boulder-oracle-sprint@4695 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'django/core/serializers/python.py')
-rw-r--r--django/core/serializers/python.py15
1 files changed, 7 insertions, 8 deletions
diff --git a/django/core/serializers/python.py b/django/core/serializers/python.py
index 1e1e6f4bec..a9baa01d5a 100644
--- a/django/core/serializers/python.py
+++ b/django/core/serializers/python.py
@@ -67,20 +67,19 @@ def Deserializer(object_list, **options):
field = Model._meta.get_field(field_name)
- # Handle M2M relations (with in_bulk() for performance)
+ # Handle M2M relations
if field.rel and isinstance(field.rel, models.ManyToManyRel):
pks = []
for pk in field_value:
if isinstance(pk, unicode):
- pk = pk.encode(options.get("encoding", settings.DEFAULT_CHARSET))
- m2m_data[field.name] = field.rel.to._default_manager.in_bulk(field_value).values()
+ pks.append(pk.encode(options.get("encoding", settings.DEFAULT_CHARSET)))
+ else:
+ pks.append(pk)
+ m2m_data[field.name] = pks
# Handle FK fields
- elif field.rel and isinstance(field.rel, models.ManyToOneRel) and field_value is not None:
- try:
- data[field.name] = field.rel.to._default_manager.get(pk=field_value)
- except field.rel.to.DoesNotExist:
- data[field.name] = None
+ elif field.rel and isinstance(field.rel, models.ManyToOneRel):
+ data[field.attname] = field_value
# Handle all other fields
else: