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 |