로드 된 JSON 개체의 데이터 구성원에 액세스하는 능력에 대한 불일치
-
06-07-2019 - |
문제
Django에서 JSON 문자열을로드하고 있습니다 simplejson
, 이와 같이:
obj = json.loads('{"name": "joe"}')
person = obj.name
이것은 오류가 발생합니다.
'dict' object has no attribute 'name'
하지만 내가 지나갈 때 obj
보기 템플릿으로 내려 가서 {{ obj.name }}
, 효과가있다! 왜요?
해결책
나는 그것의 django 측면이 어떻게 작동하는지 잘 모르겠지만 당신이 얻는 대상은 json.loads
파이썬입니다 dict
물체. 즉, 키 속성이 없지만 다른 사전처럼 액세스 할 수 있습니다.
obj = json.loads('{"name": "joe"}')
person = obj['name']
다른 팁
json.loads
JSON을 Python 사전에로드합니다. 따라서 사전처럼 액세스해야합니다. data['key']
.
이제 Django 템플릿 측면에서 공무원을 확인하십시오. 장고 템플릿 선적 서류 비치.
직접 인용 :
기술적으로, 템플릿 시스템이 도트에 직면하면,이 순서로 다음 조회를 시도합니다.
- 사전 조회
- 속성 조회
- 방법 호출
- List-Index 조회
따라서 기본적으로 Django 템플릿은 사용을 사용하여 사전 항목에 액세스 할 수 있습니다. data.key
통사론.
제휴하지 않습니다 StackOverflow