Chapter 3. 백엔드 개발 (W3 D3)
어제 개발일지를 못썼다. 튜터님이 보내주신 예시 코드를 기반으로 이리저리 시도해봤는데 결국 실패... 해답은 매우 간단했다. 이래서 기본 개념을 잘 알아야하는구나 하는 생각이 든다.
이제 정말 코딩이 어려워졌다. 그나마 스파르타 코딩클럽 수업에 나왔던 기능을 똑같이 만드는 건 어떻게든 했는데 조금만 응용을 해도 난리가 난다.
#(간신히) 완성한 것
어제까지 tag 중복확인 저장 코드를 완성하려고 했는데 이게 몇 줄 아닌데 왜 자꾸 안되는 건지. 결국 튜터님께 SOS.... 답은 매우 간단했다.
튜터님이 거의 다 써주신건데 내꺼에 적용하니 tag가 undefined 되었다는 에러가 나오는 것이었다. 알고보니 나는 마지막 db.insert 이부분 안에 (tag)라고 써넣어서 안됐던 것. 어쩐지 빨간 줄이 수상하더라니... 앞에서 정한 단어를 갖다써줘야 저장이 된다.
그래서 이렇게 각 태그가 따로 저장되고, 중복되는 건 추가되지 않게 만들었다.(와 여기까지 정말 너무 힘들었다.....)
#문제의 장소리스트 페이지
이제 그럼 조회 페이지 만드는 건 아주 쉽겠지? 하는 건 나의 엄청난 오산이었다. (....)
왼쪽부터 장소명 - 상세정보 - 주소 - 구글맵 URL - 인스타 URL - tag - 위도 - 경도인데 리스트 HTML 페이지에 태그 데이터 들어가는 자리는 일단 텍스트로 '태그자리'라고 써놓긴 했다. 그런데 행이 태그 갯수만큼 (...아니 태그 갯수보다 많아 보임) 추가됐다. 하.... 이게 맞는건가??
그럼 튜터님이 보내주신 places_tags 컬렉션 만드는 것부터 해볼까?!
튜터님이 거의 다 써주셨는데도 응용이 안되는거 보니 자괴감이 든다....
그렇다고 아무것도 안할 수는 없어서 아주 간략하게 openpyxl 을 살펴봤다. 구글링한 정보에 따르면 파이썬에서 엑셀 파일을 읽고 쓸 수 있다고 한다.나는 파일 업데이트 할 일은 없고 런칭 전에 그 안의 데이터를 읽어서 db에 저장하면 되지 않을까! (또 막연하게 간단하게 생각함)
그래서.. 머리를 비울 겸 엑셀 데이터를 채우기 시작했다. (구글 드라이브에 저장해 둔 데이터 엑셀로 내려받는데 엑셀 계속 뻑나서 난리치느라 1시간 허비함...) 주소, 구글맵URL, 위/경도만 넣는건데 하면서 그 사이 망한(....) 장소는 지우기도 하고... 일단 테스트로 쓸 만큼은 만들어 둠.
막연하게 드는 생각으로는...
1) 엑셀 파일에 있는 정보를 하나씩 (name, address, desc...) 가져와서 place 컬렉션을 채운다 --> 내가 본 블로그 글에서 첫번째 열만 가져오는 코드가 있던데 그걸 활용하면 차근차근 데이터를 가져올 수 있을 듯. (코딩은 또 나의 문제...)
2) place를 등록하면서 tag도 같이 별도의 컬렉션으로 저장한다 (* 이 과정에서 중복태그는 빼고 신규만 잘 저장)
3) places_tags 컬렉션 안에 장소 - 태그 연결고리를 저장한다. 그런데 예시에서처럼 하나 찾아서 하나 매칭하는 건 알겠는데 이 전체는 어떻게...??
지난 주에는 하나씩 퀘스트 끝내는 느낌이 있었는데 이번에는 1번 퀘스트 20%, 2번 퀘스트 10% 이렇게 조금씩 하는 기분이다. 느려도 천천히 해 봐야지...