이미지 업로드에 대해 질문 드립니다. 현재 ajax를 이용해서 이미지를 선택 시 업로드 됨

 
JiSeung Jung

이미지 업로드에 대해 질문 드립니다.
현재 ajax를 이용해서 이미지를 선택 시 업로드 됨과 동시에 썸네일로 보여줍니다.그 후 확인을 누르면 업로드 된 이미지들을 본문에 삽입 하구요.

여기서 본문에 삽입된 이미지를 html코드상에서 img태그를 지울 경우 본문에서는 이미지가 지워지더라도,실제로 데이터베이스와 디렉토리상에 이미지가 남아 있게 됩니다.혹시 이 부분을 현명하게 처리 할 방법이 있을까요?

현재 임시로 구현 해 놓은 방법은 이미지 추가시마다 세션에 이미지 목록이 리스트 형식으로 append시켜주고,글 작성 누를 때 세션에 이미지 목록이 글 내용에 있는지 검색 하여,없을 시 데이터베이스에서 삭제해 주고있습니다.

허나 이 방법을 사용 할 경우 잔뜩 이미지 본문삽입해두고 뒤로가기 누른다던지 이런 행위가 발생될때마다 결국 이미지가 남아 버리는 상황이 도로 발생 되 버리네요..

이 부분에 대한 해결책을 조언해 주시면 감사하겠습니다.

  • 남홍김

    DB에 기록된 레코드 중에 orphan(관계가 끊어진 것)이 되는 레코드만 주기적으로 지워주면 될 거 같아요.

    남홍김

    django에 커스텀 커맨드 패키지를 추가하거나 django extensions 패키지를 추가해서 scripts를 만든 후에 cron 혹은celerybeat를 쓰면 될 거 같습니다.

    JiSeung Jung

    답변 감사합니다 ㅠㅠ orphan키워드로 해답 찾은것 같아요

    남홍김

    🙂

    남홍김

    DB 레코드와 파일은 연동이 되지 않으니 레코드 지우기 전에 파일부터 지워야 해요.

    이장규

    저같은 경우는 확인을 누르기전까지 임시디렉토리에 넣어두었다가 확인 버튼을 누르면 다른 곳(다른 디렉토리 or 다른 서버)로 이동시킵니다. 임시디렉토리는 cron을 돌려서 주기적으로 지워주고요

Advertisements