Django

Unmanaged Model을 사용하면서 Test를 적용하기 (feat. Table XXX doesn't exist)

저번에 회사에서 Raw Query로 적혀있던 레거시 코드를 Django ORM기반으로 개편하려 한다고 말씀 드린적이 있었죠? 저번에 작성해두었던 고민들이 어느 정도 결정된 바도 있고, 프로젝트 구조나, 파일을 정리하는 그런 방법론들이 어느정도 정리가 되어서, 실제로 모델을 분류하면서 있었던 일들을 포스팅하려해요. 기존 SQL Query를 분석하면서 각 테이블이 어떤 테이블과 조인이 되어있고, 영향도가 어느정도 인지 체크하면서 모델 분류까지는 잘 되었던 것 같아요. 그리고 잘 되는지 테스트를 하려고 테스트 코드를 작성하고 있는데 문제가 발생했습니다. 개발자에겐 반가운? 에러가 발생한 것이죠

Read more →

April 20, 2022

Class View에서 PUT을 통해 데이터를 파싱해오기

Request has no Attribute ‘data’ 회사에서 이번에 함수형으로 설계되어 있던 뷰를 클래스 뷰로 재설계 하면서 생겼던 이슈에 대해서 알아보려고 합니다. Django를 쓰다보면 조금 의아한 부분들이 있습니다. 특히 REST Framework를 통해서 데이터를 받을 때인데요 저 같은 경우에는 AttributeError: request has no attribute 'data'라는 오류가 났었어요. 우선 제가 구현한 클래스를 보도록 하죠 # urls.py urlpatterns = [ path('my_url/', views.MyView.as_view()) ] # views.py class MyView(View) def put(self, request): my_data = request.data # my business logic 물론 JavaScript에서는 myapp/my_url/ 로 제대로 된 데이터를 보내고 있었어요.

Read more →

April 12, 2022