sourcecode

JSON에 목록 직렬화 중

codebag 2023. 2. 22. 21:53
반응형

JSON에 목록 직렬화 중

클라이언트와 Django 서버 간에 정보를 보내드리는데 JSON을 사용하고 싶습니다.간단한 정보 - 문자열 목록을 보냅니다.나는 그것을 사용해봤어요.django.core.serializers하지만 내가 했을 때,

AttributeError: 'str' object has no attribute '_meta'

이것은 장고 물건에만 사용할 수 있는 것 같습니다.심플한 Python 오브젝트를 시리얼화하려면 어떻게 해야 합니까?

순수 Python을 사용하여 수행할 수 있습니다.

import json
list = [1, 2, (3, 4)] # Note that the 3rd element is a tuple (3, 4)
json.dumps(list) # '[1, 2, [3, 4]]'

Python 2.5를 사용하는 경우 Import가 필요할 수 있습니다.simplejson:

try:
    import json
except ImportError:
    import simplejson as json

그래, 하지만 장고 물체는 어떻게 하지? 단순한 json은 그것들에 질식하는 경향이 있어.

개체가 개별 모델 개체(예: 쿼리셋이 아님)인 경우 다음과 같이 모델 개체 유형과 pk를 가끔 저장했습니다.

seralized_dict = simplejson.dumps(my_dict, 
                     default=lambda a: "[%s,%s]" % (str(type(a)), a.pk)
                     )

model.model.get에서 참조되는 오브젝트를 재구성하여 디컴라이즈를 해제할 수 있습니다.이것은 dict가 저장되어 있는 유형의 오브젝트 세부사항에 관심이 있는 경우에는 도움이 되지 않지만, 필요한 것은 어떤 오브젝트가 관련되어 있는지뿐이라면 효과적입니다.

언급URL : https://stackoverflow.com/questions/2147701/serializing-list-to-json

반응형