火星の土地を共同購入(Toy Project)


火星の土地を共同購入(Toy Project)


*Toyプロジェクトを使用してAPIを構築し、フロントエンドHTMLとサーバFlaskが通信できるようにします.
新しいプロジェクトを作成すると、以前にパブリッシュしたものと同じように設定されます.
Flashのルールを設定すればよい.




このように取り付けた後、interpriterにフラスコ、pymongo、dnspythonを取り付けます.

POST練習(注文保存)


*API-を使用して名前、アドレス、および水平を保存します(Create->POST)
@app.route("/mars", methods=["POST"])
def web_mars_post():
  name_receive = request.form['name_give']
  address_receive = request.form['address_give']
  size_receive = request.form['size_give']

  doc = {
    'name':name_receive,
    'address':address_receive,
    'size':size_receive
  }

  db.mars.insert_one(doc)

  return jsonify({'msg': '주문 완료!'})
POST APIコードを作成し、必要な情報:名前、住所、坪数の各変数名を受信する.
mongodbに関連付けられたdbをdoc={}のJSON形式で含む.mars(プロジェクト名).one(doc)を挿入します.
その後return msg値をhtmlに送信
 function save_order() {
            let name = $('#name').val()
            let address = $('#address').val()
            let size = $('#size').val()

            $.ajax({
                type: 'POST',
                url: '/mars',
                data: { name_give:name, address_give:address, size_give:size},
                success: function (response) {
                    alert(response['msg'])
                    window.location.reload()
                }
            });
        }
応答が得られます.受け取った反応で「msg」を発してwindowに注意しますlocation.また、()を再ロードしてリフレッシュすることもできます.
顺番は真ん中からだけど...jQueryを使用してhtmlのname、address、sizeを受信します.
インポート後、Ajaxの約束name give:name,address give:address,size give:size!そして応答として受け取りました!
この仕事をしていたときに学んだことは、現在の業界に「APIリスト」が存在していることだと聞きました.
フロントとバックグラウンドのつながりが悪いと通信ができないと思うので、大事なはず!
私がSIで働いていたとき、彼は私にその設計やテーブル構造に関するリストやeXerdテーブルをくれると言った.聞いただけだ受け取ったことない...ほほほ
クエリーを書きながら、データの検索に時間がかかります.
でも検索情報を書いたので習ったことのない質問もたくさん勉強になりました!
とにかく...このような通信の構造はもっと詳しく理解されている.

GETモードの練習!


注文を問い合わせる場合は、レコード時にデータベースに保存したデータベースを取り出します.

order_list = db.mars.find({}, {'_id'}:flase)))
注文に応じて保存し、データベース内のすべてのコンテンツを検索します.
に答える
必要な情報name、address、sizeを受け取ります.

テンプレートに入れるために.
let temp_html = `<tr>
                                            <td>${name}</td>
                                            <td>${address}</td>
                                            <td>${size}</td>
                                        </tr>`

                    $('#order-box').append(temp_html)
jQueryを使用して記録した後、更新すると実際の記録がテンプレートに貼り付けられます.