Django

Code

Changeset 5727

Show
Ignore:
Timestamp:
07/20/07 07:07:58 (1 year ago)
Author:
russellm
Message:

Fixed #4558 -- Modified XML serializer to handle whitespace better around None tags. Thanks to Bill Fenner <fenner@gmail.com> for the report and fix.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/trunk/django/core/serializers/xml_serializer.py

    r5609 r5727  
    172172                data[field.attname] = self._handle_fk_field_node(field_node, field) 
    173173            else: 
    174                 if len(field_node.childNodes) == 1 and field_node.childNodes[0].nodeName == 'None'
     174                if field_node.getElementsByTagName('None')
    175175                    value = None 
    176176                else: 
     
    186186        """ 
    187187        # Check if there is a child node named 'None', returning None if so. 
    188         if len(node.childNodes) == 1 and node.childNodes[0].nodeName == 'None'
     188        if node.getElementsByTagName('None')
    189189            return None 
    190190        else: 
  • django/trunk/tests/regressiontests/fixtures_regress/models.py

    r5609 r5727  
    11from django.db import models 
     2from django.contrib.auth.models import User 
    23 
    34class Animal(models.Model): 
     
    1516        db_table = "Fixtures_regress_plant" 
    1617 
     18class Stuff(models.Model): 
     19    name = models.CharField(maxlength=20, null=True) 
     20    owner = models.ForeignKey(User, null=True) 
     21     
     22    def __unicode__(self): 
     23        return unicode(self.name) + u' is owned by ' + unicode(self.owner) 
     24 
    1725__test__ = {'API_TESTS':""" 
    1826>>> from django.core import management 
     
    2735>>> animal.save() 
    2836 
     37############################################### 
     38# Regression test for ticket #4558 -- pretty printing of XML fixtures 
     39# doesn't affect parsing of None values. 
     40 
     41# Load a pretty-printed XML fixture with Nulls. 
     42>>> management.load_data(['pretty.xml'], verbosity=0) 
     43>>> Stuff.objects.all() 
     44[<Stuff: None is owned by None>] 
     45 
    2946"""}