앞서 공부했듯이
get은 read전용(조회)전용이라하였고
post는 create,update,delete 전용이라 하였다...
function makeReview() {
$.ajax({
type: "POST",
url: "/review",
data: {
sample_give: '샘플데이터'
},
success: function (response) {
alert(response["msg"]);
window.location.reload();
}
})
}
index.html 문서이고
@app.route('/review', methods=['POST'])
def write_review():
sample_receive = request.form['sample_give']
print(sample_receive)
return jsonify({'msg': '이 요청은 POST!'})
app.py 문서이다.
request.form['sample_give'], 즉 브라우저가 서버에게 "sample_give"라는 데이터를 보내달라고 요청하고 있고
그에 따라 index.html의 문서(서버)는 응답한다.(response) 이때 key값으로 response["msg"] 를 응답및 jsonify로
반환한다!
자,
인자, 이렇게 작성했으면, 제목 ,저자, 리뷰의 내용들을 DB에 저장할 서버가 필요할것이다...
어떻게 만들것이냐 그러면,,,, 바로 request.form['sample_give'],
이 함수를 응용하면 된다..!
@app.route('/review', methods=['POST'])
def write_review():
title_receive = request.form["title_give"]
author_receive = request.form["author_give"]
review_receive = request.form["review_give"]
print(sample_receive)
return jsonify({'msg': '이 요청은 POST!'})
이런식으로 응용한다..!
자 이렇게 app.py로 서버에 연결할 작업을 마쳤으면 인제 db에 연결시켜야 한다.!
그럴때 기존에 만들어놨던 dbprac.py을 이용한다.
dbprac.py를 보면 알수 있듯이 doc = 딕셔너리 형태로 값을 저장한다는 것을 알수가 있다..!
마찬가지로 app.py에도 응용한다.
이런식으로 응용한다. db에 insert_one(doc)을 이용해서 값을 저장한다.
자 기존까지는 app.py(서버)에서 값을 요청해서 서버에서 브라우저에 값을 받은거고
인자 브라우저(index.html)에서는 값들을 서버에 쏘아준다. 그 과정이
function makeReview() {
let title = $("#title").val()
let author = $("#author").val()
let review = $("#review").val()
$.ajax({
type: "POST",
url: "/review",
data: {
title_give: title,author_give: author,review_give: review
},
success: function (response) {
alert(response["msg"]);
window.location.reload();
}
})
}
이런 과정이라 생각하면 된다.
만약 잘 진행이 되서 db에 값이 저장되었다면,
데이터베이스에 이런값이 저장이 될것이다.
'웹 프로그래밍(풀스택-->python)' 카테고리의 다른 글
46. 프로젝트 세팅 (0) | 2021.05.05 |
---|---|
45. GET 연습( 리뷰 보여주기) (0) | 2021.05.02 |
43. Flask 시작하기 - 본격 API 만들기 (0) | 2021.04.28 |
42. Flask 시작하기 - HTML파일 주기 (0) | 2021.04.27 |
41. Flask 시작하기 - 서버만들기 (0) | 2021.04.26 |