bsCustomFileInput.init()

 

  • 라이브러리
<!-- 파일 업로드 라이브러리 -->
<script src="https://cdn.jsdelivr.net/npm/bs-custom-file-input/dist/bs-custom-file-input.js"></script>

 

  • Ajax
function posting() {
            let title = $('#title').val()
            let content = $("#content").val()

            let file = $('#file')[0].files[0]
            let form_data = new FormData()

            form_data.append("file_give", file)
            form_data.append("title_give", title)
            form_data.append("content_give", content)

            $.ajax({
                type: "POST",
                url: "/diary",
                data: form_data,
                cache: false,
                contentType: false,
                processData: false,
                success: function (response) {
                    alert(response["msg"])
                    window.location.reload()
                }
            });
        }

 

  • HTML
<div class="custom-file">
  <input type="file" class="custom-file-input" id="file">
  <label class="custom-file-label" for="file">Choose file</label>
</div>

 

.py

file = request.files["file_give"]
    #확장자 가져오기
    extension = file.filename.split('.')[-1]

    # 날짜 가져오기
    today = datetime.now()
    mytime = today.strftime('%Y-%m-%d-%H-%M-%S')

    filename = f'file-{mytime}'

    save_to = f'static/{filename}.{extension}'
    file.save(save_to)

'프로그래밍 > Python' 카테고리의 다른 글

datetime 함수 (python) - 날짜/시간  (0) 2022.04.28
f-string (python)  (0) 2022.04.28
POST연습  (0) 2022.04.22
Html head 세팅 (css, jQuery, bootstrap)  (0) 2022.04.20
Get 과 Post 사용법 차이 (왕초보 버전)  (0) 2022.04.20

+ Recent posts