Django

Code

Changeset 6891

Show
Ignore:
Timestamp:
12/04/07 14:31:34 (7 months ago)
Author:
jacob
Message:

Fixed #5268: the YAML serializer now uses yaml.safe_dump() instead the plain yaml.dump(); this makes YAML dumps more portable, and also removes the crufty '!!python/unicode' business. Thanks, poelzi.

Files:

Legend:

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

    r5876 r6891  
    2121        self.options.pop('stream', None) 
    2222        self.options.pop('fields', None) 
    23         yaml.dump(self.objects, self.stream, **self.options) 
     23        yaml.safe_dump(self.objects, self.stream, **self.options) 
    2424 
    2525    def getvalue(self): 
  • django/trunk/tests/modeltests/serializers/models.py

    r6813 r6891  
    220220 
    221221"""} 
     222 
     223try: 
     224    import yaml 
     225    __test__['YAML'] = """ 
     226# Create some data: 
     227 
     228>>> articles = Article.objects.all().order_by("id")[:2] 
     229>>> from django.core import serializers 
     230 
     231# test if serial 
     232 
     233>>> serialized = serializers.serialize("yaml", articles) 
     234>>> print serialized 
     235- fields: 
     236    author: 2 
     237    categories: [3, 1] 
     238    headline: Just kidding; I love TV poker 
     239    pub_date: 2006-06-16 11:00:00 
     240  model: serializers.article 
     241  pk: 1 
     242- fields: 
     243    author: 1 
     244    categories: [2, 3] 
     245    headline: Time to reform copyright 
     246    pub_date: 2006-06-16 13:00:11 
     247  model: serializers.article 
     248  pk: 2 
     249<BLANKLINE> 
     250 
     251>>> obs = list(serializers.deserialize("yaml", serialized))  
     252>>> for i in obs:  
     253...     print i 
     254<DeserializedObject: Just kidding; I love TV poker> 
     255<DeserializedObject: Time to reform copyright> 
     256 
     257""" 
     258except ImportError: pass 
     259