Python django搭建layui提交表单,表格,图标的实例
作者:Luzaofa 发布时间:2022-09-18 19:40:19
标签:Python,django,layui,提交表单
利用layui制作与众不同的感谢表单,表格
layui极大的提高了前端开发效率,它极具个性的样式等等都非常吸引人,接下来我将为大家展示如何利用Python的django框架与layui制作极富个性的表单与数据表格
注:忽略创建项目,配置文件,若这部分内容不太明白,参考教你使用Django搭建一个基金模拟交易系统,里面会教你从项目创建到最终运行的完整流程。
第一步:在templates目录下新建一个index.html文件(文件内容根据自己的业务需求在layui官网复制即可),同时改变其布局只需将form标签放到一个自定义div内,若要更改其标签颜色只需将内置的背景色CSS类添加到lable标签class即可,如:
<label class="layui-form-label layui-bg-orange">
赤色:class=”layui-bg-red”
橙色:class=”layui-bg-orange”
墨绿:class=”layui-bg-green”
藏青:class=”layui-bg-cyan”
雅黑:class=”layui-bg-black”
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>layui</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="../static/layui/css/layui.css" rel="external nofollow" rel="external nofollow" media="all">
</head>
<body>
<div style="width: 650px; position: relative; left:25%;">
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px">
<legend>表单集合练习</legend>
</fieldset>
{# <form class="layui-form" action="">#}
<form class="layui-form layui-form-pane" action="/get_mas/" method="post"> {# 方框风格的表单集合 #}
{% csrf_token %}
<div class="layui-form-item">
<label class="layui-form-label layui-bg-red">标题</label>
<div class="layui-input-block">
<input type="text" name="title" lay-verify="title" autocomplete="off" placeholder="请输入标题" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<label class="layui-form-label layui-bg-blue">用户名</label>
<div class="layui-input-block">
<input type="text" name="username" lay-verify="required" placeholder="请输入用户名" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-form-item">
<div class="layui-inline">
<label class="layui-form-label layui-bg-orange">手机号码</label>
<div class="layui-input-inline">
<input type="tel" name="phone" lay-verify="required|phone" autocomplete="off" class="layui-input">
</div>
</div>
<div class="layui-inline">
<label class="layui-form-label layui-bg-orange">邮箱地址</label>
<div class="layui-input-inline">
<input type="text" name="email" lay-verify="email" autocomplete="off" class="layui-input">
</div>
</div>
</div>
<div class="layui-form-item" align="center">
<div class="layui-input-block">
<button class="layui-btn layui-btn-normal layui-btn-radius" lay-submit="" lay-filter="demo1">立即提交</button>
<button type="reset" class="layui-btn layui-btn-danger layui-btn-radius">重置</button>
</div>
</div>
</form>
</div>
<script src="../static/layui/layui.js" charset="utf-8"></script>
<script>
layui.use('form', function(){
var form = layui.form;
//自定义验证规则
form.verify({
title: function(value){
if(value.length < 5){
return '标题至少得5个字符啊';
}
}
});
});
</script>
</body>
</html>
第二步:在templates目录下新建一个table.html文件用于接收用户提交数据
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>layui</title>
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<link rel="stylesheet" href="../static/layui/css/layui.css" rel="external nofollow" rel="external nofollow" media="all">
</head>
<body>
<div style="width: 650px; position: relative; left:25%;">
<fieldset class="layui-elem-field layui-field-title" style="margin-top: 20px">
<legend>表格练习(用户提交数据)</legend>
</fieldset>
<table class="layui-table">
<colgroup>
<col width="150">
<col width="200">
<col>
</colgroup>
<thead>
<tr class="layui-bg-red">
<th>标题</th>
<th>用户名</th>
<th>手机号码</th>
<th>邮箱地址</th>
</tr>
</thead>
<tbody>
<tr>
<td>{{ title }}</td>
<td>{{ username }}</td>
<td>{{ phone }}</td>
<td>{{ email }}</td>
</tr>
</tbody>
</table>
</div>
<script src="../static/layui/layui.js" charset="utf-8"></script>
</body>
</html>
第三步:在views里定义如下函数,index用于显示首页信息,get_mas用户接收用户提交同时返回数据
from django.shortcuts import render
from django.http import HttpResponse
def index(request):
return render(request, 'index.html')
def get_mas(request):
if request.method == "POST":
title = request.POST['title']
username = request.POST['username']
phone = request.POST['phone']
email = request.POST['email']
return render(request, 'table.html', {'title': title, 'username': username, 'phone': phone, 'email': email})
else:
return HttpResponse('<center><h1>非法操作!</h1></center>')
第四步:定义路由
from django.contrib import admin
from django.urls import path
from django.conf.urls import url
from web import views
urlpatterns = [
path('admin/', admin.site.urls),
url(r'^$', views.index),
url(r'^get_mas/$', views.get_mas),
]
实现效果图如下:
表单:
表格:
来源:https://blog.csdn.net/Luzaofa/article/details/80812415


猜你喜欢
- 本文实例讲述了JS实现基于Sketch.js模拟成群游动的蝌蚪运动动画效果。分享给大家供大家参考,具体如下:基于Sketch.js,实现了物
- 本文实例讲述了php将textarea数据提交到mysql出现很多空格的解决方法。分享给大家供大家参考。具体分析如下:有一些朋友可能会发现我
- 我们在使用selenium库调用Chromedriver.exe时需要很多的配置参数下面列出了常用参数chrome_options.add_
- window.opener 的用法 window.opener 返回的是创建当前窗口的那个窗口的引用,比如点击了a.htm上的一
- 最近几天了解了一下人脸识别,应用场景可以是图片标注,商品图和广告图中有没有模特,有几个模特,模特的性别,年龄,颜值,表情等数据的挖掘。基础的
- 本文实例为大家分享了Python读取MySQL数据库表数据的具体代码,供大家参考,具体内容如下环境:Python 3.6 ,Window 6
- drop table if exists dd; create table dd ( user_id int , class_no int
- 1 Scala 安装 1.1 Windows(1)安装 Java进入网址 https://www.oracle.com/
- 说到运维报警,我觉得都可以写个长篇历史来详细解释了报警的前世来生,比如最早报警都是用邮件,但邮件实时性不高,比如下班回家总不能人一直盯着邮箱
- 报“服务没有及时响应或控制请求”的错误,改用pyinstaller生成也是不行;查资料后修改setup.py如下即可,服务名、脚本名请自行替
- 刚刚看了bootstrap的导航栏,发现有点弄混了,现在来整理一下;导航栏是一个很好的功能,是 Bootstrap 网站的一个突出特点。导航
- python的开发工具有很多种,各有特点,本人一直使用的是pycharm,所以本篇内容仅限pycharm。1,设置python文件头模板当我
- background-clip 和 background-origin 是 CSS3 中新加的 background module 属性,用
- Flask-RESTful是一个用于快速创建RESTful API接口的Flask扩展。使用Flask-RESTful可以很快速方便地创建一
- 先备份数据库,再用下面的办法: USE MASTER GO SP_CONFIGURE 'ALLOW UPDATES',1 R
- 这篇文章主要介绍了PYTHON发送邮件YAGMAIL的简单实现解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价
- js模拟随机抽奖程序代码!相关文章推荐:随机6+1选号码摇奖程序 <html><title>模拟抽奖-asp之家&l
- 静态链表和动态链表区别静态链表和动态链表的共同点是,数据之间"一对一"的逻辑关系都是依靠指针(静态链表中称"游
- 当你用 ASP 编写服务器端应用程序时,必须依靠 ActiveX
- 调用opencv库,将yuv图像转为jpg图像。代码如下:# define _CRT_SECURE_NO_WARNINGS#include