게시판 POST 만들기

dainchoi·2020년 11월 28일
0

프로젝트

목록 보기
9/10
post-thumbnail

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();
                    }
                }
            })
        }

0개의 댓글