게시글
질문&답변
안녕하십니까 이미지 파일 업로드 부분 관련하여 질문 드립니다!
아 그 제가 지정한 BOARD_IMAGE_PATH에 저장이 된다는 말이었습니다 BOARD_IMAGE_PATH = "G:\\IT_SourceCode\\Python\\images" 경로는 위처럼 지정해뒀고 게시글을 작성할때 이미지를 드래그앤 드롭을 하면 이미지가 작성중에 아예 나오지 않습니다 그리고 에디터가 이미지를 인식을 못하는것 같습니다 그대로 게시글을 작성완료하려고 하면 내용을 작성하라는 에러메시지가 발생하는걸 보니 이미지 업로드가 되질 않는것 같습니다 이러한 오류가 발생하는 구간이 글 작성 도중 에디터를 사용할때 입니다. 드래그앤 드롭 하면 에디터에는 이미지가 보이지 않습니다만 제가 저장한 위 패스경로에는 이미지가 저장이 되어있습니다 그리고 print는 제가 코드 복붙하다 실수로 넣은 코드입니다,, ㅎ 이건 writehtml의 summernote 부분 코드 첨부했습니다 {% extends "main.html" %} {% block contents %} script> $(document).ready(function () { $("#summernote").summernote({ height:300, minheight: null, maxheight: null, lang: "ko-KR", popover: { image: [], link: [], air: [] }, callbacks: { onImageUpload: function(image) { for(var i = 0 ; i image.length ; i++) { uploadImage(image[i]); } } } }); }); function uploadImage(image){ print("") var data = new FormData(); data.append("image", image); $.ajax({ url: "{{url_for('board.upload_image')}}", cache: false, contentType: false, processData: false, data: data, type: "post", success: function(url){ var image = $("(사진)").attr("src", url).css('max-width', "900px"); $("summernote").summernote("insertNode", image[0]); }, error: function(data){ console.log(data); alert(data); } }); } script> script> function checkForm() { if($.trim($("#title").val()) == "") { alert("제목을 입력하세요"); $("#title").focus(); return false; } if($.trim($("#summernote").val()) == "") { alert("내용을 입력하세요"); $("#summernote").focus(); return false; } } 이건 board.py부분의 upload_image부분 코드입니다 @blueprint.route("/upload_image", methods=["POST"]) def upload_image(): if request.method == "POST": file = request.files["image"] if file and allowed_file(file.filename): filename = "{}.jpg".format(rand_generator()) savefilepath=os.path.join(app.config["BOARD_IMAGE_PATH"], filename) file.save(savefilepath) return url_for("board.board_images", filename=filename) @blueprint.route("/images/") def board_images(filename): return send_from_directory(app.config["BOARD_IMAGE_PATH"], filename) 혹시 몰라 common.py의 파일관련 코드도 첨부했습니다 def allowed_file(filename): return "." in filename and filename.rsplit(".", 1)[1] in ALLOWED_EXTENSIONS def rand_generator(length=8): char=ascii_lowercase + ascii_uppercase + digits return "".join(random.sample(char,length)) 이건 main.html의 javascriptcdn과 summernote cdn 부분인데 혹시 몰라 이것도 첨부합니다 ㅠ meta charset="UTF-8"> meta name="viewport" content="width=device-width, initial-scale=1.0"> title>{{title}}title> link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous"> script src="https://code.jquery.com/jquery-3.5.1.min.js" type="text/javascript">script> script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.1/dist/umd/popper.min.js" integrity="sha384-9/reFTGAW83EW2RDu2S0VKaIzap3H66lZH81PoYlFhbGU+6BZp6G7niu735Sk7lN" crossorigin="anonymous">script> script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/js/bootstrap.min.js" integrity="sha384-B4gt1jrGC7Jh4AgTPSdUtOBvfO8shuf57BaghqFfPlYxofvL8/KUEfYiJOMMV+rV" crossorigin="anonymous">script> link href="https://cdn.jsdelivr.net/npm/summernote@0.8.18/dist/summernote.min.css" rel="stylesheet"> script src="https://cdn.jsdelivr.net/npm/summernote@0.8.18/dist/summernote.min.js">script> 아무리 생각해도 write.html부분 에디터가 이미지를 왜 작성하지 못하는 것 같은데 몇 일간 서칭하고 해도 도저히 안되서 질문 드립니다 ㅠㅠ 로그상으로도 살펴보았습니다만 127.0.0.1 - - [21/Sep/2020 14:29:53] "POST /board/upload_image HTTP/1.1" 200 - 파일에러 127.0.0.1 - - [21/Sep/2020 14:29:53] "GET /board/images/M9b4Bo0v.jpg HTTP/1.1" 200 - 이미지 업로드 요청을 하면 글 작성 에디터에서는 보이질 않습니다만 지금은 심지어 인쇄창으로 넘어갑니다 뒤 상황은 동일합니다만 이미지를 업로드 받지 못합니다 에디터가 하지만 제 로컬 폴더상에는 이미지가 저장이 되어있구요 ㅠㅠ
- 1
- 3
- 343
질문&답변
2020 6월 14일 질문
와 공백 때문에 결과가 출력이 안되던 거였군요 ,, 이런 ㅠ
- 2
- 3
- 600
질문&답변
2020 6월 14일 질문
아,,,, ㅠㅠㅠㅠㅠㅠㅠㅠㅠ 제가 아직 갈길이 멀었군요 친절하게 알려주셔서 감사합니다 재작성해보도록 하겠습니다
- 2
- 3
- 600