layui是一个极简同时极具丰盈特性的前端框架,接下来我将通过Python与layui配合,绘制一个表格(layui一大特色模块),主要讲述如何通过Python编写数据接口,同时在layui调用接口
第一步:若第一次使用layui,需自行安装,将其解压安装到自己的文件夹即可
解压文件夹如图:
第二步:创建Python Django项目,将layui文件夹加入django默认路径,新建一个index.html文件,内容直接在官网复制代码即可
<!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" media="all">
<!-- 注意:本地文件路径 -->
</head>
<body>
<table class="layui-hide" id="test"></table>
<script src="../static/layui/layui.js" charset="utf-8"></script>
<!-- 注意:本地文件路径 -->
<script>
layui.use('table', function(){
var table = layui.table;
table.render({
elem: '#test'
,url:'/demo/table/user/' // 数据接口,后续讲解
,cellMinWidth: 80 //全局定义常规单元格的最小宽度,layui 2.2.1 新增
,cols: [[
{field:'id', width:80, title: 'ID', sort: true}
,{field:'username', width:80, title: '用户名'}
,{field:'sex', width:80, title: '性别', sort: true}
,{field:'city', width:80, title: '城市'}
,{field:'sign', title: '签名', width: '30%', minWidth: 100} //minWidth:局部定义当前单元格的最小宽度,layui 2.2.1 新增
,{field:'experience', title: '积分', sort: true}
,{field:'score', title: '评分', sort: true}
,{field:'classify', title: '职业'}
,{field:'wealth', width:137, title: '财富', sort: true}
]]
});
});
</script>
</body>
</html>
运行项目若出现如下结果则说明第一步已经成功实现:
第三步:定义一个数据接口,用于表单数据请求(其中数据字段必须按照官网要求定义,不符合要求将无法返回数据)
def response_data(request):
data = {
"code":0,"msg":"","count":1000,"data":[{
"id":