diff options
| author | Jacob Kaplan-Moss <jacob@jacobian.org> | 2006-11-07 05:01:35 +0000 |
|---|---|---|
| committer | Jacob Kaplan-Moss <jacob@jacobian.org> | 2006-11-07 05:01:35 +0000 |
| commit | a1199d8528e2f51d333ea044a8b000665e2f7d7b (patch) | |
| tree | b7f8c65fcb71f77999ade747e52f3296a88db49c | |
| parent | 86143f7599e964cf3dc8ad3a88294d443a8138ff (diff) | |
Fixed #2894: XML deserializer now correctly handles null primary keys.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@4046 bcc190cf-cafb-0310-a4f2-bffc1f526a37
| -rw-r--r-- | django/core/serializers/xml_serializer.py | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/django/core/serializers/xml_serializer.py b/django/core/serializers/xml_serializer.py index 09fff408cf..512b8c6176 100644 --- a/django/core/serializers/xml_serializer.py +++ b/django/core/serializers/xml_serializer.py @@ -166,7 +166,11 @@ class Deserializer(base.Deserializer): # If it doesn't exist, set the field to None (which might trigger # validation error, but that's expected). RelatedModel = self._get_model_from_node(node, "to") - return RelatedModel.objects.get(pk=getInnerText(node).strip().encode(self.encoding)) + # Check if there is a child node named 'None', returning None if so. + if len(node.childNodes) == 1 and node.childNodes[0].nodeName == 'None': + return None + else: + return RelatedModel.objects.get(pk=getInnerText(node).strip().encode(self.encoding)) def _handle_m2m_field_node(self, node): """ |
