flask表单提交的两种方式
一.通用方式
通用方式就是使用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)
flask表单提交的两种方式的更多相关文章
- asp.net mvc表单提交的几种方式
asp.net MVC中form提交和控制器接受form提交过来的数据 MVC中form提交和在控制器中怎样接受 1.cshtml页面form提交2.控制器处理表单提交数据4种方式方法1:使用传统的R ...
- Form 表单提交的几种方式
简单的总结一下form表单提交的几种方式:1.最简单的方式 就用form的submit提交方式,这种提交方式是不需要回调函数的 这种方式最近到一个form提供action路径后台接受就可以< ...
- JS表单提交的几种方式
第一种方式 : 表单提交,在 form 标签中增加 onsubmit 事件来判断表单是否提交成功 <script type="text/javascript"> fun ...
- js阻止表单提交的两种方法
下面直接看代码. <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...
- 使用JS和JQuery 阻止表单提交的两种方法
<html> <head> <meta http-equiv="Content-Type" content="text/html; char ...
- 表单提交的两种请求方式:post与get。post与get两者的对比分析
post与get两者的对比分析:
- 表单提交的3种方式,http post的contentType
application/x-www-form-urlencoded:窗体数据被编码为名称/值对.这是标准的编码格式.这是默认的方式 multipart/form-data:窗体数据被编码为一条消息,页 ...
- form表单提交的几种方法
form表单提交的几种方法 <form id="myform" name="myform" method="post" onsubmi ...
- jquery ajax提交表单数据的两种方式
http://www.kwstu.com/ArticleView/kwstu_201331316441313 貌似AJAX越来越火了,作为一个WEB程序开发者要是不会这个感觉就要落伍,甚至有可能在求职 ...
随机推荐
- MAVEN中的插件放在哪个dependcies里面
如果你用maven来管理项目的话,你会发现你要依赖很多plugin,于是引出了一个问题. 一个project中可能有两个<dependcies>这个tag, 如下 <dependci ...
- 找window的三种方法
LoginViewController * loginVC = [[LoginViewController alloc]init]; 找window的三种方式 1.// UIWindow * wind ...
- PHP操作mysql数据库:[2]查询数据听语音
本文主要详细讲解如何使用php语言,对mysql数据库进行查询.添加.删除.更新等操作. 工具/原料 Macromedia Dreamweaver 8 mysql数据库,php语言 一.前言 ...
- Linux 折腾汇集,实时更新
一.Linux教程 入门教程:http://www.92csz.com/study/linux/ 命令大全:http://man.linuxde.net/ 一.界面: 在Ubuntu.Linux Mi ...
- javascript-简单工厂两种实现方式
简单工厂笔记 两种方式: 第一种:通过实例化对象创建 第二种:通过创建一个新对象然后包装增强其属性和功能来实现 差异性:前一种通过类创建的 对象,如果这些类继承同一个父类,他们父类原型上的方法是可以共 ...
- 电话薄设计--java
package com.hanqi.telbook; import java.util.Scanner; public class Menu { //主菜单 public void mainMenu( ...
- request对象详解
先来了解一下Request的主要方法: setAttribute(String name,Object):设置名字为name的request的参数值getAttribute(String name): ...
- Sql Server 添加外部程序集基本操作
简介:有时候Sql Server的内置函数没有那么好用的时候,可以引用一下外部程序集,下面献下丑,做下添加外部程序集操作 1.准备程序,编译出一个MyCLR的DLL. public class CLR ...
- python基础(三)序列
作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 谢谢thunder424纠错 sequence 序列 sequence(序列)是一 ...
- Linux信号
信号本质上就是一个软件中断,它既可以作为两个进程间的通信的方式, 更重要的是, 信号可以终止一个正常程序的执行, 通常被用于处理意外情况 ,* 信号是异步的, 也就是进程并不知道信号何时会到达 $ki ...