seminar-2020 icon indicating copy to clipboard operation
seminar-2020 copied to clipboard

Assignment 2 하면서 배운 것들

Open YeonghyeonKO opened this issue 4 years ago • 0 comments

수십 시간 동안 백엔드 과제를 진행하며 배운 것들이 많아 까먹기 전에 공유하면 좋을까 해서 issue를 파보았습니다. comment로도 tip 공유해주시면 감사하겠습니다!


  1. serializer에서 serialize / deserialize
  • get_{field} 함수 사용법
  • serialize 시에 many=True option (list에 넣어둔 후에 serialize했음)
  • context['request']란?

  1. Routing for extra actions

ex. # DELETE /api/v1/seminar/{seminar_id}/user/


  1. object 정확히 짚어내기 (feat. get vs filter의 차이)

  1. Overriding 제대로 공부하기
  • 얘는 눈으로는 어느 정도 파악할 수 있지만 직접 활용해서 더 익숙해지자.

  1. 항상 서버 개발자의 마인드로 임하기 (앞으로도 계속)
  • 최대한 db를 덜 건드리는 방향으로 사고하기
  • 500 에러는 모두 박멸하기.
  • save(), related_name() 활용하여 object 최대한 효율적으로 호출하기
  • migration 할 때 생각 또 생각하기

  1. error에 익숙해지기
  • runserver error 천천히 읽으면서 에러 상황 파악하기
  • print로 object, 구문, 함수 return값 찍어보기

  1. 기타 함수들
  • isoformat(timespec='minutes')
  • request.data.get('username')
  • timezone.now() (from django.utils import timezone)
  • model_to_dict (쓰지 않았지만 어떤 경우에서는 유용할 듯)
  • get_object_or_404(Model, field, ...) (try except ObjectDoesNotExist 안 써도 404 반환)

YeonghyeonKO avatar Sep 28 '20 15:09 YeonghyeonKO