2022/05/19 | 📃 Fact (사실) | 🙃 Feeling (감정) | 👀 Find (배운점) |
---|---|---|---|
🌱코코 | |||
[Back: API 구현] |
[Front: 초기세팅완료] 1. 디자인 시스템을 CSS로 구현 2. API URL 3. View Componen | 드디어 백엔드에서 탈출한다.. 내일부터 Vue할 생각에 신이 나지만 걱정이 앞서는 것은 사실이다. 아직 Vue를 프로젝트에서 활용할 만큼 숙련도가 높지 않다고 생각하기 때문에 내가 상상해왔던 웹사이트 로직으로 구현을 할 수 있을지 모르겠다.
그리고, URL 순서.. 확인하자…꼭… 특히나 <str>을 쓸 때….😥
와이어프레임을 만들 때까지만 해도 그정도 웹사이트는 구현을 할 수 있을 거라 생각했는데,,, 아몰라~! 🙄 | [Back]
DJango ORM은 신이다.
링크
__
: 역참조 모델의 필드에 접근할 수 있다.
~Q
: not Q
order_by(?)
: 랜덤으로 정렬한다.
추천 및 정렬 기능을 구현하면서 annotate와 filter를 적극 활용하게 되었고 자연스럽게 Django ORM 문법에 대해 배울 수 있었다.
dj_rest_auth로 커스텀 회원가입을 구현 참고자료 커스텀 회원가입 때문에 회원가입이 되지 않는 오류가 있었는데 스터디원들의 도움을 받아 바로 해결할 수 있었다. | | 🕊둘기 | [Back]
****영화 데이터 구축 로직 수정
영화 검색 API 보강
게시판 검색 API 추가
영화 추천 API 추가 | 백엔드를 마무리 지었다. 강의로만 듣던 내용을 시행착오를 격어보면서 진행 해보니까 교수님이 강조했던 중요하다 했던 부분들에 대해서 몸으로 체감 할 수 있었다. 특히 검색 로직과 추천 로직을 구현해 보면서 ORM의 위대함과 쿼리스트링 URL의 유용성에 대하여 깨달았다. ORM은 신이야!🙊👍 | [Back]
기존에 깡으로 json을 구현하는 방식은 데이터 형식도 안 맞을 수도 있고, 중간에 오류가 나면 처음부터 다시 받아야 되는 문제점 때문에 장고에서 데이터에 바로 저장 하는 방식으로 수정 했다.
직접 데이터에 저장하기 때문에 함수를 실행하는 서순을 잘 맞춰야 된다.
Django ORM
__
: 역참조 모델의 필드에 접근할 수 있다.
q |= Q()
|= 과 &= 은 파이썬의 += 과 같이 사용 가능하다
쿼리스트링 URL
**path 방식에 비해 더 많은 정보를 받는게 가능
query = request.GET.get('query')
|
2022/05/20 | 📃 Fact (사실) | 🙃 Feeling (감정) | 👀 Find (배운점) |
---|---|---|---|
🌱코코 | |||
[시스템] | |||
git hub와 gitlab 연동하기 |
**[Front]
2. account 관련 기능 구현
Vue에 미숙하다보니 작업하는데 시간이 오래걸렸다. 그래서 능률이 안 좋았다. 목표했던 것을 다 진행하지 못해서 아쉬웠지만, 내일을 위해 그만하는 걸로! 벌써 새벽 6시다 🥺 | [Front] 1. 로그인, 회원가입 로직
로그인: 유저가 기입한 정보를 토큰을 담아서 api를 보낸다. ⇒ 올바른 응답이 오면 발근된 토큰을 로컬에 저장한 뒤, 토큰을 이용하여 유저 데이터를 저장한다.
회원가입: 유저가 기입한 정보를 담아서 api를 보낸다. ⇒ 올바른 응답이 오면 서버에 데이터를 저장하고 토큰을 생성하여 발급한다.⇒ 토큰을 localStorage에 저장한 뒤 이를 활용하여 유저데이터를 추가로 저장한다.
2. 오류가 발생한 원인을 데이터에서 뽑아내서 원인을 알려주는 알림을 보낸다. 알림 메시지를 도출하기 위해 error.request.response를 객체로 변환한뒤 객체의 값을 배열로 저장했다. sweetalert2를 이용하여 오류결과를 유저에게 알려주었다. | | 🕊둘기 | [Front + Back]
[Front]
2022/05/21 | 📃 Fact (사실) | 🙃 Feeling (감정) | 👀 Find (배운점) |
---|---|---|---|
🌱코코 | |||
**[Front] |
2. account관련 기능 구현
3. 유저 profile 페이지 구현 | 아 힘들다. | 1. form data를 활용하여 이미지 데이터를 서버에 저장한다.
2022/05/22 | 📃 Fact (사실) | 🙃 Feeling (감정) | 👀 Find (배운점) |
---|---|---|---|
🌱코코 | |||
**[Front] |
유저 프로필 이미지를 수정 모달에서 등록한 이미지가 보여주기 위해 모델, 시리얼라이즈 추가
회원 탈퇴 기능 구현**
3. 유저 profile image 컴포넌트 수정 - 재사용성 높이기
4**. MovieDetail 페이지 구현**
근데 내다 버린 효율… 이미지를 유저 프로필 수정에 추가할 때마다 서버에 이미지가 저장된다. 서버에 있는 이미지를 삭제하려면 코드를 수정해야 하는데 나중에 … 🥺 | 비동기적으로 받는 데이터를 활용하여 페이지를 구성하면 랜더될 때 오류가 발생한다. 이에 대한 처리가 필요하다. ⇒ ?
를 사용하자!
관련해서 내일 추가 학습할 내용 | | 🕊둘기 | [Front]
2022/05/23 | 📃 Fact (사실) | 🙃 Feeling (감정) | 👀 Find (배운점) |
---|---|---|---|
🌱코코 | |||
**[Front] |
CSS를 깔끔하게 적용하고 싶은데, 참 어려운 것 같다. 또한 api요청을 효율적이게 코드를 구현하는 지 스스로에 대한 의문이 든다. 매번 웹페이지에서 어떤 활동이 이루어질 때마다, 데이터의 변화를 페이지에 반영한다. 어떻게 코딩을 해야 클-린하게 만들 수 있는가.
지금 상태로는 어제의 내 코드가 내 적이다. 어제의 나 뭐한거야! | CSS 짤팁 (블러 처리, 행 수 제한 등)
| | 🕊둘기 | [Front]
2022/05/23 | 📃 Fact (사실) | 🙃 Feeling (감정) | 👀 Find (배운 점) |
---|---|---|---|
🌱코코 | |||
**[Front] |
2. 유저 프로필 페이지
만약, 시간 여유가 있다면 더 하고 싶은 기능들이 있긴 하다. 하지만, 그럴 일은 없겠지…😚
2. 동적 컴포넌트 동적 컴포넌트에 대해 배웠다. 동적 컴포넌트를 이동하여 추가 라우터 구성 없이도 하위 컴포넌트를 동적으로 변경시킬 수 있다.
3. ref
|
| 🕊둘기 | [Front]
시간이 남는다면 라우터 설정을 손보고 싶다. | 1. 게시 글 검색과 필터를 따로 만들어 놓으니까 검색과 필터링이 둘 중 나중에 적용한 속성이 적용된다는 사실을 알게 되어서 백엔드 단에서 params로 검색 여부와 게시판의 타입을 설정할 수 있게 로직을 다시 짰다. 필터와 검색의 상관 관계에 대하여 배웠다. 2. 토스트 ui를 사용하는 법에 대하여 배웠다. |
2022/05/23 | 📃 Fact (사실) | 🙃 Feeling (감정) | 👀 Find (배운 점) |
---|---|---|---|
🌱코코 | |||
**[Front] |
2. 유저 프로필 페이지
**3. 오류 알럿 추가
| | 🕊둘기 | [Front] 1.검색창 개선 2.메인페이지 완성 | 메인페이지를 다 만들고 지쳐서 검색창 개선을 못했다. 대신 다른곳에 필을 받아서 카톡 공유 기능과 스크롤 프로그래스바 그리고 게시판 새로고침을 개선하였다 | 카톡 공유 API 사용법을 배웠다. |