[Fishy Fish] Backend - 메인페이지

메인 페이지 API Flow 정리

  1. 사용자가 이미지를 업로드 한다.
  2. 업로드한 이미지를 S3버킷에 저장한 후 이미지 url을 반환받는다.
  3. 반환된 url을 rabbitMQ에 전달하여 Celery Worker에 전달하여 물고기 종 분류를 한다.
  4. 분류한 결과값을 통해 DB에 초기데이터로 세팅되어 있는 물고기 정보를 불러온다.
  5. 사용자에게 물고기 정보 반환

코드 작성 중 발생한 문제들

1. 이미지를 admin에서 미리 한 장 저장좋지 않으면 s3버켓에 이미지가 올라가지 않는다..

  • 원인: images앱과 account앱에 각자 만들어놓은 model

회원가입을 했음에도 불구하고 image모델의 외래키로 존재하는 user_id가 인식되지 않는 것을 admin 테스트 중 확인했다.
따라서 각자 작성해놓은 ORM을 프로젝트 폴더에 합쳤다.

∴ 문제 해결

2. 이미 저장했던 이미지와 같은 이름의 이미지를 저장하면 이전에 저장했던 이미지가 s3버켓에서 사라진다..

  • 파일 이름을 UUID로 덮어쓰기한 후 이미지를 저장했다.

∴ 문제 해결

전체 코드

homebdy
homebdy 개발에 이제 막 발 담근 사람. 개발에 이제 막 발 담근 사람. 개발에 이제 막 발 담근 사람. 개발에 이제 막 발 담근 사람.
comments powered by Disqus