728x90
https://thihara.github.io/Django-Req-Parsing/
DRF에서는 알아서 해줘서 위 처리를 해준다고 한다, 근데 django-ninja를 쓰다가 PUT method 사용시 image를 Optional하게 업데이트 하고 싶은 상황이 있었다.
#자세한 상황은 아래 이슈 참고.
https://github.com/vitalik/django-ninja/issues/473
근데 django-ninja에서는 request의 content-type이 아니라 실제 서버에서 선언한 api에 따라서 content-type을 정해놓고 처리하도록 해뒀다.
따라서 PUT으로 json 타입의 payload를 담은 request를 보내더라도 서버 쪽에선 해당 api가 multipart-form으로 와야되면 항상 multipart-form 형태의 데이터로 간주하고 내부적인 로직을 짜둔것이다.
그러다보니 multipart-form 형태의 코드는 django-ninja에서 POST안에 있는 데이터를 기준으로 request처리를 해주는데 PUT은 당연히 request.POST 데이터가 비어있기 때문에 정상적으로 처리가 되지 않았다.
이게 말로는 무슨말인지 헷갈릴 수 있으나 최상단 글을 읽어보면 쉽게 이해할 수 있을것이다.
나 또한 한참 헤매다가 비슷한 상황을 경험한 개발자들의 솔루션을 참고해서 해결했다.(1번째 링크 or 두번째 링크의 코멘트에 남겨둔 이슈번호 참고)
728x90
'일상I생각' 카테고리의 다른 글
홍미노트10프로 언락 및 인도네시아롬 올리기 (0) | 2022.07.04 |
---|---|
삶을 다르게 보게 되는 도덕경. (0) | 2022.06.30 |
시작과 끝, 끝과 시작. (0) | 2022.06.09 |
광주국립아시아문화전당 달을 묻을래 공연 후기 (0) | 2022.05.23 |
도덕경을 읽고, 밀리의서재 도덕경 추천 (0) | 2022.05.20 |