国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > Python > 正文

詳解flask表單提交的兩種方式

2020-01-04 14:43:03
字體:
來源:轉載
供稿:網友

一.通用方式

通用方式就是使用ajax或者$.post來提交。

前端html

<form method="post" action="/mockservice" method = "post">   ...   <div class="form-group">    <label>data <font style="color:#a94442" size="2">    <input class="form-control" id="data" name="data">  </div>  <div class="form-group">    <button id="start" type="submit" class="btn btn-default">Submit  </button>  </div></form> 

將操作綁定

$(document).ready(function() {  MockTask.start();});MockTask ={  startId: "start_mock",  start: function(){    $('#'+this.startId).click(function (){        ...var data = $('#data').val();      var form_data = JSON.stringify({       ..."data": data      });      MockSubmit.createTask(form_data);    });  },};MockSubmit = {  createTask: function(data){    var url = "/mockservice";    $.post(url,data,function(result){      if (result.code != 'SUCC'){        alert("failed to create a new api.")      } else {        alert("succ");      }    });  }};function isEmptyString(info) {  if (info == null || info == undefined || info.length == 0){    return true;  }  return false} 

這樣通過js來實現提交表單的功能,然后flask后端

@app.route("/mockservice",methods=['GET','POST'])def MockController():  form = MockCreate()  if request.method == 'POST':    code = request.form['code']    api = request.form['api']  return ... 


通用方式的好處就是在其他框架中也適用。而且也并不復雜。

二.比較正宗的flask方式

前端html:

<form method="post" action="/mockservice" method = "post">   ...  <div class="form-group">    <label>data <font style="color:#a94442" size="2">    <input class="form-control" id="data" name="data">  </div>  <div class="form-group">    <button type="submit" class="btn btn-default">Submit  </button>  </div></form>

前端這時候可以不用綁定操作了,但需要新建一個form對象,用這種方式的好處就是flask有很多內置的方式幫你校驗你的提交,一個字:省事!

class MockCreate(Form):  user_email = StringField("email address",[validators.Email()])  api = StringField("api",[Required()])  submit = SubmitField("Submit")  code = IntegerField("code example: 200",[Required()])  alias = StringField("alias for api")  data = TextAreaField("json format",[Required()])

后端這時候就要變成:

@app.route("/mockservice",methods=['GET','POST'])def MockController():  form = MockCreate()  code = form['code']  api = form['api']  return render_template("testf.html",api=api,data=code)

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到python教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 罗田县| 城步| 闸北区| 丽水市| 满洲里市| 鄯善县| 拉萨市| 古田县| 抚顺市| 潜山县| 郧西县| 鸡泽县| 酒泉市| 丰台区| 米林县| 南木林县| 小金县| 梁平县| 惠东县| 金寨县| 彭泽县| 松潘县| 无为县| 佛学| 东乡族自治县| 天水市| 饶平县| 平舆县| 青岛市| 重庆市| 巴南区| 安义县| 杭锦后旗| 鄂托克前旗| 武夷山市| 应城市| 罗田县| 罗山县| 荥阳市| 东山县| 讷河市|