• 카테고리

    질문 & 답변
  • 세부 분야

    풀스택

  • 해결 여부

    미해결

체크박스에 체크를 하지 않고 '수정하기' 버튼을 클릭-파일삭제

20.04.11 00:45 작성 조회수 227

1

안녕하십니까~

첨부파일이 있는 경우에 '글 수정'에 들어가서 '첨부파일 삭제' 체크박스에 체크를 하지 않고 '수정하기' 버튼을 클릭하고 나오면 첨부파일이 삭제되는 것은 정상인지요???

파일 업데이트하는 경우에는 정상적으로 업데이트한 파일이 정상적으로 올라갑니다만...

답변 2

·

답변을 작성해보세요.

2

MIKE.aeon님의 프로필

MIKE.aeon

2020.10.16

첨부파일이 있는 게시글을 수정시, 첨부파일 선택없이 수정하면,  기존 첨부파일을 삭제하지는 않지만, 디비에서 첨부파일 정보가 삭제되어 기존첨부 파일이 삭제된것 처럼 보입니다. 실제 폴더에는 기존첨부파일이 존재합니다.

            if "attachfile" in request.files:

                print("attachfile-yes") <<== 여기 실행됩니다.

                file = request.files["attachfile"]

                print("file: ", file)

                if file and allowed_file(file.filename): <<==여기서 튕겨서 아래부분은 실행되지 않음

                    filename = chekc_filename(file.filename)

                    file.save(os.path.join(app.config["BOARD_ATTACH_FILE_PATH"], filename))

                    print("filename", filename)

                    if data.get("attachfile"):

                        board_delete_attach_file(data.get("attachfile"))

if 조건문 위에서 , filename = None  처리한 부분때문에 몽고디비에서 첨부파일이름이 null 로 처리됩니다.

write(글작성시) 경우는 if "attachfile" in request.files: 처리해도 동작에는 문제가 없습니다.

그래서 아래 처럼 변경하면 해당 오류가 해결됩니다.

if "attachfile" in request.files: ==> if request.files["attachfile"]:

참고하시기 바랍니다.

가후님의 프로필

가후

2022.10.11

덕분에 쉽게 해결하고 갑니다.

시간이 많이 지났지만, 너무 유용한 꿀팁이라서 고맙다는 말씀 꼭 드리고 싶습니다

감사합니다.

0

첨부파일 삭제 체크를 하지 않고 수정을 완료했을때 파일이 삭제되면 정상이 아닌걸로 보입니다만...