udemy 강의를 통해 학습하였다. 강의에서 만든 todo list에서 더 나아가 여러 기능들을 추가했다.
api를 화면에 출력하면 잘 가져와지지만 받아온 api를 일부만 가져오려고 하면 사진처럼 글자가 깨져서 나왔다.
코드 상으로 봤을 때, api 까지는 잘 작동하지만 data부터 뭔가 인코딩이 잘못된 것 같았다.

def home(request):
import xmltodict
import requests
api_request = requests.get("http://openapi.seoul.go.kr:8088/6d59625a4f686a7334345658594176/xml/AccInfo/1/5/")
api = xmltodict.parse(api_request.content)
#api_request가 가져왔으면 데이터를 xml_dict로 파싱해서 저장하고,
data = api['AccInfo']['row']
return render(request, 'home.html', {'api':api}, {'data':data})
결국 views에서는 api를 건들이지 못했고 html로 가져와서 필요한 데이터를 뽑아내야 했다.
{{ api.AccInfo.row.0 }}
😂 문제 해결...
return render(request, 'home.html', {'api':api, 'data':data})이렇게 코드를 고치면 문제가 해결된다.
데이터는 하나의 딕셔너리로 묶어서 보내야한다.
완료로 체크했을 때 url을 새로 연결해서 체크하면 화면이 한번 새로고침 된다. 화면 전환 없이 체크하는 방법이 있을 것 같다. 가장 보완하고 싶은 부분이다.
앱을 만드는 동안 교통사고가 딱 한 번 발생했다. 큰 사고가 아니었으면 좋겠다. 하루 반나절동안 한 건의 교통사고라면... 꽤 안전한 도로가 아닌가 싶은 생각이 들었다.
👉 영상으로 보기 : 실시간 도로상황 모니터링 + 관련 업무 일지 시스템
👉 전체 소스코드 : jeongseo21/traffic_toy_project