app.py
from flask import Flask, render_template, jsonify, request
app = Flask(__name__)
import requests
from bs4 import BeautifulSoup
from pymongo import MongoClient
client = MongoClient('localhost', 27017)
db = client.dbsparta
## HTML을 주는 부분
@app.route('/')
def home():
return render_template('desc.html')
## API 역할을 하는 부분
@app.route('/board', methods=['POST'])
def boardsaving():
# # (1) nickname_receive로 닉네임 가져오기
nickname_receive = request.form['nickname_give']
# (2) comment_receive로 후기 가져오기
comment_receive = request.form['comment_give']
# DB에 삽입 할 자료
review = {
'nickname': nickname_receive,
'comment': comment_receive,
}
# reviews에 review 저장하기
db.reviews.insert_one(review)
# 성공 여부 확인 및 메시지 출력
return jsonify({'result': 'success', 'msg': '후기 등록 완료'})
if __name__ == '__main__':
app.run('0.0.0.0', port=5000, debug=True)
desc.html
function makeReview() {
// 1. 게시판에 입력된 닉네임 후기 가져오기
let nickname = $("#nickname").val();
let comment = $("#comment").val();
// 2. 닉네임 후기 중 하나라도 입력안한게 있으면 alert 보여주기
if (nickname == "") {
alert("닉네임을 입력해주세요.");
$("#nickname").focus();
return;
} else if (comment == "") {
alert("후기를 입력해주세요.");
$("#comment").focus();
return;
}
// 3. POST /product 에 저장(create)요청
$.ajax({
type: "POST",
url: "/board",
data: {nickname_give: nickname, comment_give: comment},
success: function (response) { // 성공하면
if (response["result"] == "success") {
alert(response["msg"]);
window.location.reload();
}
}
})
}