refactor(jinja2):修改模板使用继承
This commit is contained in:
@@ -1,172 +1,171 @@
|
||||
<!DOCTYPE html>
|
||||
<html>
|
||||
<head>
|
||||
{% extends 'admin/base.html' %}
|
||||
|
||||
{% block title %}
|
||||
<title>权限</title>
|
||||
{% include 'admin/common/header.html' %}</head>
|
||||
</head>
|
||||
<body>
|
||||
<form class="layui-form" action="">
|
||||
<div class="mainBox">
|
||||
<div class="main-container">
|
||||
{% endblock %}
|
||||
|
||||
{% block body %}
|
||||
<form class="layui-form" action="">
|
||||
<div class="mainBox">
|
||||
<div class="main-container">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">父级</label>
|
||||
<div class="layui-input-block">
|
||||
<ul id="selectParent" name="parentId" class="dtree" data-id="-1"></ul>
|
||||
<div class="main-container">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">父级</label>
|
||||
<div class="layui-input-block">
|
||||
<ul id="selectParent" name="parentId" class="dtree" data-id="-1"></ul>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">名称</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="powerName" lay-verify="title" autocomplete="off" placeholder="权限名称"
|
||||
class="layui-input">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">名称</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="powerName" lay-verify="title" autocomplete="off" placeholder="权限名称"
|
||||
class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item" id="powerCodeItem">
|
||||
<label class="layui-form-label">标识</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="powerCode" name="powerCode" autocomplete="off" placeholder="权限标识"
|
||||
class="layui-input">
|
||||
<div class="layui-form-item" id="powerCodeItem">
|
||||
<label class="layui-form-label">标识</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="powerCode" name="powerCode" autocomplete="off" placeholder="权限标识"
|
||||
class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">状态</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="radio" lay-filter="powerType" name="powerType" value="0" title="目录">
|
||||
<input type="radio" lay-filter="powerType" name="powerType" value="1" title="菜单" checked>
|
||||
<input type="radio" lay-filter="powerType" name="powerType" value="2" title="按钮">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">状态</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="radio" lay-filter="powerType" name="powerType" value="0" title="目录">
|
||||
<input type="radio" lay-filter="powerType" name="powerType" value="1" title="菜单" checked>
|
||||
<input type="radio" lay-filter="powerType" name="powerType" value="2" title="按钮">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item" id="powerUrlItem">
|
||||
<label class="layui-form-label">路径</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="powerUrl" name="powerUrl" autocomplete="off" placeholder="菜单路径"
|
||||
class="layui-input">
|
||||
<div class="layui-form-item" id="powerUrlItem">
|
||||
<label class="layui-form-label">路径</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="powerUrl" name="powerUrl" autocomplete="off" placeholder="菜单路径"
|
||||
class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item" id="openTypeItem">
|
||||
<label class="layui-form-label">打开</label>
|
||||
<div class="layui-input-block">
|
||||
<select name="openType" id="openType">
|
||||
<option value=""></option>
|
||||
<option value="_iframe">框架</option>
|
||||
<option value="_blank">签页</option>
|
||||
</select>
|
||||
<div class="layui-form-item" id="openTypeItem">
|
||||
<label class="layui-form-label">打开</label>
|
||||
<div class="layui-input-block">
|
||||
<select name="openType" id="openType">
|
||||
<option value=""></option>
|
||||
<option value="_iframe">框架</option>
|
||||
<option value="_blank">签页</option>
|
||||
</select>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">图标</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="icon" name="icon" lay-filter="icon" class="layui-input">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">图标</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" id="icon" name="icon" lay-filter="icon" class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">排序</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="sort" lay-verify="title" autocomplete="off" placeholder="排序"
|
||||
class="layui-input">
|
||||
<div class="layui-form-item">
|
||||
<label class="layui-form-label">排序</label>
|
||||
<div class="layui-input-block">
|
||||
<input type="text" name="sort" lay-verify="title" autocomplete="off" placeholder="排序"
|
||||
class="layui-input">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bottom">
|
||||
<div class="button-container">
|
||||
<button type="submit" class="pear-btn pear-btn-primary pear-btn-sm" lay-submit="" lay-filter="power-save">
|
||||
<i class="layui-icon layui-icon-ok"></i>
|
||||
提交
|
||||
</button>
|
||||
<button type="reset" class="pear-btn pear-btn-sm">
|
||||
<i class="layui-icon layui-icon-refresh"></i>
|
||||
重置
|
||||
</button>
|
||||
<div class="bottom">
|
||||
<div class="button-container">
|
||||
<button type="submit" class="pear-btn pear-btn-primary pear-btn-sm" lay-submit=""
|
||||
lay-filter="power-save">
|
||||
<i class="layui-icon layui-icon-ok"></i>
|
||||
提交
|
||||
</button>
|
||||
<button type="reset" class="pear-btn pear-btn-sm">
|
||||
<i class="layui-icon layui-icon-refresh"></i>
|
||||
重置
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</form>
|
||||
</form>
|
||||
{% endblock %}
|
||||
|
||||
{% block models_script %}
|
||||
<script type="module">
|
||||
import { RIGHTS_API } from '/static/api/http.js'
|
||||
|
||||
{% include 'admin/common/footer.html' %}
|
||||
layui.use(['form', 'jquery', 'iconPicker', 'dtree'], function () {
|
||||
let form = layui.form
|
||||
let $ = layui.jquery
|
||||
let iconPicker = layui.iconPicker
|
||||
let dtree = layui.dtree
|
||||
|
||||
<script type="module">
|
||||
import { RIGHTS_API } from '/static/api/http.js'
|
||||
dtree.renderSelect({
|
||||
elem: '#selectParent',
|
||||
url: RIGHTS_API.RIGHTS(),
|
||||
method: 'get',
|
||||
selectInputName: { nodeId: 'parentId', context: 'powerName' },
|
||||
skin: 'layui',
|
||||
dataFormat: 'list',
|
||||
response: { treeId: 'powerId', parentId: 'parentId', title: 'powerName' }, //修改response中返回数据的定义
|
||||
selectInitVal: '0',
|
||||
})
|
||||
|
||||
layui.use(['form', 'jquery', 'iconPicker', 'dtree'], function () {
|
||||
let form = layui.form
|
||||
let $ = layui.jquery
|
||||
let iconPicker = layui.iconPicker
|
||||
let dtree = layui.dtree
|
||||
|
||||
dtree.renderSelect({
|
||||
elem: '#selectParent',
|
||||
url: RIGHTS_API.RIGHTS(),
|
||||
method: 'get',
|
||||
selectInputName: { nodeId: 'parentId', context: 'powerName' },
|
||||
skin: 'layui',
|
||||
dataFormat: 'list',
|
||||
response: { treeId: 'powerId', parentId: 'parentId', title: 'powerName' }, //修改response中返回数据的定义
|
||||
selectInitVal: '0'
|
||||
})
|
||||
|
||||
form.on('radio(powerType)', function () {
|
||||
if (this.value == '0') {
|
||||
$('#powerUrlItem').hide()
|
||||
$('#powerCodeItem').hide()
|
||||
$('#openTypeItem').hide()
|
||||
$('#powerUrl').val('')
|
||||
$('#powerCode').val('')
|
||||
$('#openType').val('')
|
||||
} else if (this.value == '1') {
|
||||
$('#powerUrlItem').show()
|
||||
$('#powerCodeItem').show()
|
||||
$('#openTypeItem').show()
|
||||
} else if (this.value == '2') {
|
||||
$('#powerUrlItem').hide()
|
||||
$('#openTypeItem').hide()
|
||||
$('#powerCodeItem').show()
|
||||
$('#powerUrl').val('')
|
||||
$('#openType').val('')
|
||||
}
|
||||
})
|
||||
|
||||
form.on('submit(power-save)', function (data) {
|
||||
data.field.icon = 'layui-icon ' + data.field.icon
|
||||
$.ajax({
|
||||
url: RIGHTS_API.POWER(0),
|
||||
data: JSON.stringify(data.field),
|
||||
dataType: 'json',
|
||||
contentType: 'application/json',
|
||||
type: 'post',
|
||||
success: function (result) {
|
||||
if (result.success) {
|
||||
layer.msg(result.message, { icon: 1, time: 1000 }, function () {
|
||||
parent.layer.close(parent.layer.getFrameIndex(window.name))//关闭当前页
|
||||
parent.render()
|
||||
})
|
||||
} else {
|
||||
layer.msg(result.message, { icon: 2, time: 1000 })
|
||||
form.on('radio(powerType)', function () {
|
||||
if (this.value == '0') {
|
||||
$('#powerUrlItem').hide()
|
||||
$('#powerCodeItem').hide()
|
||||
$('#openTypeItem').hide()
|
||||
$('#powerUrl').val('')
|
||||
$('#powerCode').val('')
|
||||
$('#openType').val('')
|
||||
} else if (this.value == '1') {
|
||||
$('#powerUrlItem').show()
|
||||
$('#powerCodeItem').show()
|
||||
$('#openTypeItem').show()
|
||||
} else if (this.value == '2') {
|
||||
$('#powerUrlItem').hide()
|
||||
$('#openTypeItem').hide()
|
||||
$('#powerCodeItem').show()
|
||||
$('#powerUrl').val('')
|
||||
$('#openType').val('')
|
||||
}
|
||||
}
|
||||
})
|
||||
return false
|
||||
})
|
||||
})
|
||||
|
||||
iconPicker.render({
|
||||
// 选择器,推荐使用input
|
||||
elem: '#icon',
|
||||
// 数据类型:fontClass/unicode,推荐使用fontClass
|
||||
type: 'fontClass',
|
||||
// 是否开启搜索:true/false
|
||||
search: true,
|
||||
// 是否开启分页
|
||||
page: true,
|
||||
// 每页显示数量,默认12
|
||||
limit: 12,
|
||||
// 点击回调
|
||||
click: function (data) {
|
||||
console.log(data)
|
||||
}
|
||||
})
|
||||
})
|
||||
</script>
|
||||
</body>
|
||||
</html>
|
||||
form.on('submit(power-save)', function (data) {
|
||||
data.field.icon = 'layui-icon ' + data.field.icon
|
||||
$.ajax({
|
||||
url: RIGHTS_API.POWER(0),
|
||||
data: JSON.stringify(data.field),
|
||||
dataType: 'json',
|
||||
contentType: 'application/json',
|
||||
type: 'post',
|
||||
success: function (result) {
|
||||
if (result.success) {
|
||||
layer.msg(result.message, { icon: 1, time: 1000 }, function () {
|
||||
parent.layer.close(parent.layer.getFrameIndex(window.name))//关闭当前页
|
||||
parent.render()
|
||||
})
|
||||
} else {
|
||||
layer.msg(result.message, { icon: 2, time: 1000 })
|
||||
}
|
||||
},
|
||||
})
|
||||
return false
|
||||
})
|
||||
|
||||
iconPicker.render({
|
||||
// 选择器,推荐使用input
|
||||
elem: '#icon',
|
||||
// 数据类型:fontClass/unicode,推荐使用fontClass
|
||||
type: 'fontClass',
|
||||
// 是否开启搜索:true/false
|
||||
search: true,
|
||||
// 是否开启分页
|
||||
page: true,
|
||||
// 每页显示数量,默认12
|
||||
limit: 12,
|
||||
// 点击回调
|
||||
click: function (data) {
|
||||
console.log(data)
|
||||
},
|
||||
})
|
||||
})
|
||||
</script>
|
||||
{% endblock %}
|
||||
Reference in New Issue
Block a user