form表单提交

1203

你。 提交于 2019-12-06 10:54:00
目录 一、多对多创建的三种方式 1.全自动 2.半自动 3.纯手动 二、from组件 1. forms组件的3大作用 2. 渲染标签 (1)前端渲染标签的3种方式 (2)后端写法 (3)forms基本使用实例: 3. 校验数据 4. 展示错误信息 三、forms组件的约束条件和错误信息 1. 约束条件和错误信息的书写 2. 其他约束数据的方式 (1) HOOK (钩子函数) (2)选择类的input框 一、多对多创建的三种方式 1.全自动 当表数据不复杂,一般情况下可以使用全自动,即Django会自动创建第三张关系表。 优点:全部是orm自动操作的,可以跨表查询并且内置了四个操作方法,add、remove、set、clear 缺点:自动创建的第三张表无法扩展修改字段,表的扩展性差 class Book(models.Model): name = models.CharField(max_length=32) # 使用ManyToManyField自动创建多对多关系 authors = models.ManyToManyField(to='Authors') class Authors(models.Model): name = models.CharField(max_length=32) 2.半自动 需要对第三张表做一定扩展时,推荐使用该方法创建多对多关系

vue笔记(五)表单验证

ぃ、小莉子 提交于 2019-12-06 10:42:40
这里以验证两次密码是否一致,来记录vue表单验证写法。 一、首先这里使用 Element UI 的表单验证,基本用法如地址:http://element-cn.eleme.io/#/zh-CN/component/form 二、然后查看示例代码,了解对应的属性,方法,事件。 三、拷贝示例代码然后简化,如下: <div> <el-form :model="ruleForm" :rules="demoRules" ref="ruleForm" size="mini"> <el-form-item label="验证用户名" prop="name"> <el-input v-model="ruleForm.name"></el-input> </el-form-item> <el-form-item label="再次输入" prop="nameAgain"> <el-input v-model="ruleForm.nameAgain"></el-input> </el-form-item> <el-form-item> <el-button type="primary" @click="submitBtn">提交</el-button> <el-button @click="resetBtn">重置</el-button> </el-form-item> </el-form> <

html表单提交的几种方法

本秂侑毒 提交于 2019-12-06 10:35:11
原文地址: http://www.ijser.cn/?p=34 最普通最常用最一般的方法就是用submit type..看代码: <form name=”form” method=”post” action=”#"> <input type=”submit” name=”submit” value=”提交"> </form> 另外,还有一种常用的方法是使用图片: <form name=”form” method=”post” action=”# "> <input type=”image” name=”submit” src=”btnSubmit.jpg”> </form> 第三种是使用链接来提交表单,用到了javascript的DOM模型: <form name=”form” method=”post” action=”#”> <a href=”javascript:form.submit();”>提交</a> </form> 这种方法实际上是调用了一个javascript函数,使用javacript函数来提交表单,方法就非常多非常灵活了,比如可以把它加入到任意一个标签的onclick事件中: <form name=”form” method=”post” action=”#”> <div οnclick=”javascript:form.submit();”> <span>提交

html form中onsubmit的使用

五迷三道 提交于 2019-12-06 10:34:52
html form 中的onsubmit在点submit按钮时被触发,如果return false;则结果不会被提交到action中去(也就是提交动作不会发生),如果 不返回或者返回true,则执行提交动作 。onsubmit和action两个都是提交时出发的,不过: onsubmit是在表单中的确认按钮被点击时出发的 ,一般是js函数,而 action是在按钮被点击之后出发的 ,一般是出发前台提交到后台的请求,而引起后台的回应。(<a οnclick=”return confirm(‘是否跳转到百度?’);” href=”http://www.baidu.com”>baidu</a>也同理),下面是一个例子程序 <!doctype html> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>html form onsubmit使用</title> <script type="text/javascript"> alert("加载此页面时执行"); function buttonSubmit(){ document.form1.submit(); } </script> </head> <body> <a οnclick="return

flask学习笔记(-Web 表单)

送分小仙女□ 提交于 2019-12-06 10:32:40
WEB表单 安装flask-wtf Flask可以通过request.form 能获取POST 请求中提交的表单数据。尽管 Flask 的请求对象提供的信息足够用于处理 Web 表单,但有些任务很单调,而且要重复操作。比如,生成表单的 HTML 代码和验证提交的表单数据。 Flask-WTF 扩展可以把处理 Web 表单的过程变成一种愉悦的体验。 pip install flask-wtf 跨站请求伪造保护 Flask-WTF 能保护所有表单免受跨站请求伪造(Cross-Site Request Forgery,CSRF)的攻击。恶意网站把请求发送到被攻击者已登录的其他网站时就会引发 CSRF 攻击。 解释 , flask-wtf教程 为了实现 CSRF 保护,Flask-WTF 需要程序设置一个密钥。Flask-WTF 使用这个密钥生成加密令牌,再用令牌验证请求中表单数据的真伪。 #设置 Flask-WTF app = Flask(__name__) app.config[ 'SECRET_KEY' ] = 'hard to guess string' #字典可用来存储框架、扩展和程序本身的配置变量。 #为了增强安全性,密钥不应该直接写入代码,而要保存在环境变量中。 表单类 每个 Web 表单都由一个 继承自 Form 的类 表示。这个类定义表单中的一组字段

Flask学习记录之Flask-WTF

☆樱花仙子☆ 提交于 2019-12-06 10:32:13
Flask-wtf时Wtforms库的flask框架扩展,能够方便的处理Web表单 一.定义一个web表单 使用flask-wtf时,每个web表单都由一个继承自flask.ext.wtf.Form的类表示,每个字段都由类中的属性表示,每个字段可以附属多个验证函数 from flask.ext.wtf import Form from wtforms import StringField, PasswordField, SubmitField from wtforms.validators import DataRequired,EqualTo class RegForm(Form): username = StringField( ' Username ' ,validators= [DataRequired()]) password = PasswordField( ' password ' , validators= [DataRequired()]) password1 = PasswordField( ' confirm password ' , validators= [DataRequired(), EqualTo( ' password ' , ' password not match ' )                                     

Flask Web 开发学习稿(二)

孤街浪徒 提交于 2019-12-06 10:31:56
第四章 Web 表单 request.from 能获取 POST 请求中提交的表单数据 Flask-WTF 扩展可以把处理 Web 表单的过程变成一种愉悦的体验 4.1 跨站请求伪造保护 默认情况下,Flask-WTF 能保护所有表单免受跨站请求伪造的攻击,为了实现 CSRF 保护,Flask-WTF 需要程序设置一个密钥,会使用这个密钥生成加密令牌,再用令牌验证请求中表单数据的真伪 设置密钥的方法如示例所示 app = Flask(__name__) app.config[ 'SECRET_KEY '] = 'This is a secret key' app.config 字典可用来存储框架、扩展和程序本身的配置变量,这个对象还提供了一些方法可以从文件或环境中导入配置值。SECRTET_KEY 配置变量是通用密钥,可在 Flask 和多个第三方扩展中使用。 为了增强安全性,密钥不应该直接写入代码,而要保存在环境变量中 4.2 表单类 使用 Flask-WTF 时,每个 Web 表单都由一个继承自 Form 的类表示,这个类定义表单中的一组字段,每个字段都用对象表示,字段对象可附属一个或多个验证函数 from flask.ext.wtf import Form from wtforms import StringField, SubmitField from wtforms

渲染Web视图

末鹿安然 提交于 2019-12-06 10:31:06
渲染Web视图 本章主要内容包括: 将数据模型渲染为HTML 使用JSP视图 1 理解视图解析 将控制器中请求处理的逻辑和视图中的渲染实现解耦是Spring MVC 的一个重要特性。如果控制器中的方法直接负责产生HTML的话,就很难在不影响请求处理逻辑的前提下,维护和更新视图。控制器方法和视图的实现会在模型内容上达成一致,这是两者的最大关联,除此之外,两者应该保持足够的距离。但是,如果控制器只通过逻辑视图来了解视图的话,那Spring该如何确定使用哪一个视图实现来渲染模型呢?这就是Spring视图解析器的任务了。 在之前的章节中,我们使用名为InternalResourceViewResolver的视图解析器。在它的配置中,为了得到视图的名字,会使用”/WEB-INF/views/”前缀和”.jsp”后缀,从而确定来渲染模型的JSP文件的物理位置。现在,我们回过头来看看视图解析器的基础知识以及Spring提供的其他视图解析器。 Spring MVC 定义了一个名为ViewResolver的接口,它大致如下所示: public interface ViewResolver { View resolveViewName(String viewName, Locale locale) throws Exception; } 当给resolveViewName(

Flask_wtf自定义 field样式(Placeholder, Style)、wtf.html、匹配 Bootstrap4、jinja2 quick_form

*爱你&永不变心* 提交于 2019-12-06 10:30:25
Flask-wtf + Flask-bootstrap 简简单单用一条语句就能让 jinja2 渲染出 form:wtf.quick_form(form) 但如果要实现自定义的表单样式,如下图,怎么做呢? Live Demo: http://tianya.heroku.com/wtf 自定义错误提示: 很简单,修改3个地方就行: forms.py class CommentForm (Form) : name = StringField( '' , validators = [Length( 0 , 64 )], render_kw = { "placeholder" : "Your name" , "style" : "background: url(/static/login-locked-icon.png) no-repeat 15px center;text-indent: 28px" }) email = StringField( '' , description = '* We \' ll never share your email with anyone else.' , validators = \ [DataRequired(), Length( 4 , 64 ), Email( message = u" 邮件格式有误 " )], render_kw = {

Python Flask Web 第十课 —— flask-wtf

被刻印的时光 ゝ 提交于 2019-12-06 10:26:24
1. Flask-WTF 的安装与密钥的设置 默认情况下,flask-wtf 能保护所有表单免受跨站请求伪造(Cross-site Request Forgery,CSRF)的攻击。恶意网站把请求发送到攻击者已登陆的其他网站时就会引发 CSRF 攻击。 flask-wtf 的安装如下: pip install flask-wtf 为了实现 CSRF 保护,Flask-WTF 需要程序设置一个密钥,Flask-WTF 使用这个密钥生成加密令牌,再用令牌验证请求中表单数据的真伪。 设置密钥的方法如下所示: app.config[ 'SECRET_KEY '] = 'hard to guess' app.config 字典可用来存储框架、扩展和程序本身的配置变量。 2. 表单类 使用 flask-wtf 时,每个 Web 表单都由一个继承自 Form 的类 表示。该类用于定义表单中的一组 字段 ,每个字段都用对象表示。字段对象可附属一个或多个 验证函数 。验证函数用来验证用户提交的输入值是否符合要求。 from flask_wtf import Form from wtforms import StringField, SubmitField from wtforms.validators import DataRequired class NameForm (Form) : name