티스토리 뷰
오늘의 결과
Get방식을 기존 ajax, 자바스크립트 코드가 아닌 jinja2로 이용
jinja2 의 장점 :
html코드 안에서 연산작업을 수행
중복된 코드를 줄일 수 있음
@app.route('/review/comment', methods=['POST'])
def comment_post():
place_receive = request.form['place_give']
comment_receive = request.form['comment_give']
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)
doc = {
"place": place_receive,
"comment": comment_receive,
"file": f'{filename}.{extension}'
}
db.festivareview.insert_one(doc)
return jsonify({'result': 'success', 'msg': f'"{place_receive}" 저장!'})
function save_review() {
let place = $('#place').val()
let comment = $('#comment').val()
let file = $('#file')[0].files[0]
let form_data = new FormData()
form_data.append("file_give", file)
form_data.append("place_give", place)
form_data.append("comment_give", comment)
$.ajax({
type: "POST",
url: "/review/comment",
data: form_data,
cache: false,
contentType: false,
processData: false,
success: function (response) {
alert(response["msg"])
window.location.reload()
}
});
}
사진을 서버에 포스팅
오늘의 오류
몽고db의 데이터를 Get으로 ajax가 아닌 jinja2로 보내는 과정에서 하루 시간의 절반이상을 잡아먹음
알고보니
get방식을 return jsonify(###) 등으로 보내고있었음
return render_template(index.html)로 바꾸니 근원문제 해결
{% for row in rows %}
{% set gu_name = row.MSRSTE_NM %}
{% set gu_mise = row.IDEX_MVL %}
<li>{{ gu_name }}: {{ gu_mise }}</li>
{% endfor %}
이 방식을 깊이 유념하자..
'사견 > 노트' 카테고리의 다른 글
핸드폰 번호 가리기 (0) | 2022.05.16 |
---|---|
0511 회고 (0) | 2022.05.11 |
0510 회고 (0) | 2022.05.10 |
0509 항해 첫날 (0) | 2022.05.09 |
이모지, 부트스트랩 (0) | 2022.04.20 |
Comments
최근에 올라온 글
최근에 달린 댓글
TAG
- script setup
- 책리뷰
- 객체 지도
- vuex
- mybatis구현
- 스프링부트
- 짝지어제거하기
- it책 리뷰
- 맥 error
- JWT
- 리눅스마스터2급
- pinia
- 알고리즘
- 객체지향
- 타임리프
- 프로그래머스
- for
- LEVEL2
- vue.js
- SpringSecurity
- CompositionAPI
- java 플레이그라운드
- 토스페이먼츠
- 함께모으기
- springboot
- 정수형으로 변환
- 객체지향의 사실과 오해
- Vue.js3
- 다음 큰 숫자
- 한권으로끝내기리눅스마스터2급
- Total
- Today
- Yesterday