2017-02-22 16 views
6

Trong DRF, tôi có thể serialize một đối tượng Python có nguồn gốc như thế này:Serializing một danh sách các đối tượng với django-nghỉ ngơi-framework

class Comment(object): 
    def __init__(self, email, content, created=None): 
     self.email = email 
     self.content = content 
     self.created = created or datetime.now() 

class CommentSerializer(serializers.Serializer): 
    email = serializers.EmailField() 
    content = serializers.CharField(max_length=200) 
    created = serializers.DateTimeField() 

comment = Comment(email='[email protected]', content='foo bar') 
serializer = CommentSerializer(comment) 
serializer.data 

# --> {'email': '[email protected]', 'content': 'foo bar', 'created': '2016-01-27T15:17:10.375877'} 

Có thể làm tương tự cho một danh sách các đối tượng sử dụng ListSerializer?

Trả lời

15

Bạn chỉ cần thêm nhiều = True cho danh sách nối tiếp.

comment = [Comment(email='[email protected]', content='foo bar'),Comment(email='[email protected]', content='foo bar 1'),Comment(email='[email protected]', content='foo bar 2')] 
serializer = CommentSerializer(comment, many=True) 
serializer.data 
Các vấn đề liên quan