成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久

您的位置:首頁技術文章
文章詳情頁

django Layui界面點擊彈出對話框并請求邏輯生成分頁的動態表格實例

瀏覽:331日期:2024-10-08 14:34:25

1、首先,界面上有個按鈕觸發操作:

<button type='button' id='user_list'>用戶列表</button>

2、點擊這個按鈕觸發之后,會彈出一個對話框并請求view,從數據庫中得到數據并產生動態表格,

其中script代碼如下:

<script> layui.use([’table’], function () { var table = layui.table $('#user_list').click(function(){ layer.open({ type: 1, title: ’用戶信息’, area: [’800px’, ’600px’], //寬高 content: ’<div class='layui-card-header'><div class='layui-form-text'>用戶信息列表</div>’ + ’</div><div class='layui-form-item'>’ + ’<table lay-filter='user_table'></table></div>’, success: function () { table.render({elem: ’#user_table’,id: ’user_table’,height: 480,method: ’post’, //接口http請求類型,默認:geturl: ’{% url ’user:user_list’ %}’,request: { pageName: ’page’, //頁碼的參數名稱,默認:page limitName: ’limit’, //每頁數據量的參數名,默認:limit},response: { statusName: ’code’, //規定數據狀態的字段名稱,默認:code statusCode: 0, //規定成功的狀態碼,默認:0 msgName: ’msg’, //規定狀態信息的字段名稱,默認:msg countName: ’count’, //規定數據總數的字段名稱,默認:count dataName: ’data’, //規定數據列表的字段名稱,默認:data},page: true, //是否分頁limit: 10, //每頁顯示的條數limits: [10, 20, 30], //每頁條數的選擇項,默認:[10,20,30,40,50,60,70,80,90]。cols: [ [ { field: ’username’, //字段名 title: ’用戶名’, //標題 width: 150, sort: true, //是否允許排序 默認:false fixed: ’left’ //固定列 }, { field: ’sex’, //字段名 title: ’性別’, //標題 width: 100, sort: true //是否允許排序 默認:false //fixed: ’left’ //固定列 }, { field: ’age’, //字段名 title: ’年齡’, //標題 width: 100, sort: true //是否允許排序 默認:false //fixed: ’left’ //固定列 }, { field: ’mobile’, //字段名 title: ’手機’, //標題 width: 100, sort: true //是否允許排序 默認:false //fixed: ’left’ //固定列 }, { field: ’address’, //字段名 title: ’地址’, //標題 width: 150, sort: true //是否允許排序 默認:false //fixed: ’left’ //固定列 },{ field: ’’, //字段名 title: ’操作’, //標題 toolbar: ’#bar’ } ]], }); }, cancel: function () { layer.closeAll(); } }) }); }); </script> <script type='text/html' id='bar'> <button class='layui-btn layui-btn-normal'>查看</button> <button class='layui-btn layui-btn-normal'>編輯</button></script>

3、接著,所請求的view的方法,即為上面定義的url屬性,{% url ’user:user_list’ %},其中url配置,以及邏輯實現代碼分別如下:

from django.urls import path urlpatterns = [ # 查詢用戶列表 path(’user_list/’, UserQuery.as_view(), name='user_list'),]

from apps.user.models.user_model import UserInfofrom django.http import JsonResponsefrom django.views.decorators.csrf import csrf_exempt class UserQuery(View): ''' 用戶信息查詢 ''' def post(self, request): user_list = UserInfo.objects.objects.get_queryset().order_by(’id’) data = dict() data_items = [] for item in user_list : user_dict = {'username': item.username, 'age': item.age, 'sex': item.sex, 'mobile': item.mobile, 'address': item.address} data_items.append(user_dict ) data.__setitem__('data', data_items) data.__setitem__('code', 0) data.__setitem__('msg', '') data.__setitem__('count', len(field_list)) return JsonResponse(data) @csrf_exempt def dispatch(self, *args, **kwargs): return super(UserQuery, self).dispatch(*args, **kwargs)

注:

(1)、通過查詢UserInfo model底下的數據,然后分別循環這個列表,把動態表格所需要顯示的值,填充到一個字典底下,并追加進列表當中,最后再統一構成一個字典data,把列表數據,狀態碼,返回信息,數量返回回去。

(2)其中通過ajax請求時,可能會有csrf跨域的限制,因為我們沒有構造一個表單,并在表單底下加個 {% csrf_token %} ,導致請求不過去,所以要加個@csrf_exempt注解方式來解決。

補充知識:django數據接口與layUI框架數據表格結合:數據渲染和真實分頁

第一步 :

通過查詢數據轉化為layui的數據接口模式

{“code”: 0, “msg”: “”, “count”:總數, “data”: 查詢的數據}

自行定義訪問路徑,當url訪問 xxxx/tasks/data/ 路徑時:訪問視圖response_data,將數據傳到前端,通過html可查看相關代碼

視圖函數views.py

import jsondef response_data(request): dates=AssetInfo.objects.all()#自行創建測試數據。 dataCount = dates.count()#數據總數 lis=[] for i in dates: dict={} dict[’jobname’]=i.jobname#與前端一一對應,自行設置要展示的字段 dict[’Departments’] = i.Departments.lm_unit#外鍵字段 dict[’groups’] = i.groups.variables_name#外鍵字段 dict[’email’] = i.email dict[’status’] = i.status dict[’taskNo’] = i.taskNo dict[’create_time’] = i.create_time lis.append(dict) pageIndex = request.GET.get(’page’) #前臺傳的值, pageSize = request.GET.get(’limit’) #前臺傳的值 pageInator = Paginator(lis, pageSize)#導入分頁模塊分頁操作,不寫前端只展示一頁數據, contacts = pageInator.page(pageIndex)#導入分頁模塊分頁操作,不寫前端只展示一頁數據, res=[] for i in contacts: res.append(i) print(res) Result = {'code': 0, 'msg': '', 'count':dataCount, 'data': res} # json.dumps(Result, cls=DateEncoder)沒有時間字段問題可直接返回此代碼。有就返回下面代碼 return HttpResponse(json.dumps(Result, cls=DateEncoder), content_type='application/json')#解決時間字段json問題class DateEncoder(json.JSONEncoder): def default(self, obj): if isinstance(obj,datetime.datetime): return obj.strftime('%Y-%m-%d %H:%M:%S') else: return json.JSONEncoder.default(self,obj)

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='http://www.piao2010.com/static/layui-v2.5.5/layui/css/layui.css' rel='external nofollow' media='all'> <!-- 注意:如果你直接復制所有代碼到本地,上述css路徑需要改成你本地的 --></head><body><table id='test'></table><script src='https://rkxy.com.cn/static/layui-v2.5.5/layui/layui.js' charset='utf-8'></script><!-- 注意:如果你直接復制所有代碼到本地,上述js路徑需要改成你本地的 --><script>layui.use(’table’, function(){ var table = layui.table; table.render({ elem: ’#test’ ,url:’/tasks/data/’#數據接口 ,page: true ,limit:5 ,limits:[5,15,20] ,cols: [[ {field: ’jobname’, title: ’任務名’} , {field: ’Departments’, title: ’部門’} , {field: ’groups’, title: ’配置’} , {field: ’email’, title: ’郵箱’} , {field: ’status’, title: ’狀態’} , {field: ’taskNo’, title: ’隊列狀態’ } , {field: ’create_time’, title: ’創建時間’} ]] });});</script></body></html>

效果圖

django Layui界面點擊彈出對話框并請求邏輯生成分頁的動態表格實例

以上這篇django Layui界面點擊彈出對話框并請求邏輯生成分頁的動態表格實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持好吧啦網。

標簽: Django
相關文章:
成人在线亚洲_国产日韩视频一区二区三区_久久久国产精品_99国内精品久久久久久久
在线影院国内精品| 国产亚洲成av人在线观看导航| 亚洲一卡久久| 欧美色大人视频| 日本一区二区视频在线观看| 中文字幕久久午夜不卡| 久久精品999| 亚洲人人精品| 欧美成人a视频| 免费成人在线网站| 亚洲乱亚洲高清| 精品久久久影院| 天堂久久一区二区三区| 国产精品国产一区二区| 欧美肥妇毛茸茸| 丝袜美腿亚洲综合| 欧美亚洲不卡| 欧美一区二区三区性视频| 亚洲一区二区精品视频| 99re成人精品视频| 欧美美女一区二区三区| 亚洲成人精品一区二区| 欧美日韩网址| 日韩欧美激情在线| 免费看日韩精品| aa级大片欧美三级| 国产亚洲1区2区3区| 国产乱色国产精品免费视频| 国产精品一区二区欧美| 国产欧美一区二区三区网站| 麻豆精品一区二区| 国产亚洲在线| 欧美激情一区二区三区在线| 九一久久久久久| 亚洲国产成人不卡| 久久蜜桃一区二区| 国产91精品久久久久久久网曝门| 色综合久久九月婷婷色综合| 亚洲欧洲一区二区三区| av电影在线观看一区| 91精品国模一区二区三区| 天堂va蜜桃一区二区三区| 亚洲乱码视频| 日本一区二区高清| av一区二区三区四区| 88在线观看91蜜桃国自产| 日本特黄久久久高潮| 亚洲一区二区三区欧美| 国产精品电影院| 欧美成人一品| 久久久噜噜噜久噜久久综合| 成人午夜在线视频| 欧美一区二区三区视频免费| 久久国产麻豆精品| 欧美专区亚洲专区| 日本视频中文字幕一区二区三区| 久久精品电影| 亚洲高清久久久| 一区二区三区国产盗摄| 亚洲欧美综合在线精品| 欧美国产三区| 精品国产91久久久久久久妲己| 国模少妇一区二区三区| 欧美亚洲自拍偷拍| 亚洲一线二线三线视频| 国产日韩专区| 一区二区三区四区不卡视频| 韩日精品视频| 欧美激情综合在线| 欧美日韩一区在线播放 | 久久精品国语| 亚洲国产日韩综合久久精品| 亚洲人www| 亚洲精品日产精品乱码不卡| 亚洲狠狠婷婷| 亚洲伦在线观看| 99国产精品久久久久老师| 美女被吸乳得到大胸91| 欧洲av在线精品| 看国产成人h片视频| 欧美自拍丝袜亚洲| 精品一区二区在线视频| 欧美日韩高清一区| 国产精品一区在线观看乱码| 日韩欧美国产一二三区| aaa国产一区| 国产肉丝袜一区二区| 欧美三区视频| 一区二区中文视频| 一区二区三区偷拍| 亚洲电影一级片| 色哟哟一区二区| 喷白浆一区二区| 欧美精品乱人伦久久久久久| 毛片不卡一区二区| 欧美精品久久天天躁| 成人亚洲一区二区一| 久久久午夜电影| 黄色在线一区| 一区二区三区电影在线播| 欧美亚洲三级| 亚洲一区三区电影在线观看| 免费一级片91| 91精品国产综合久久久久久 | 91福利小视频| 激情亚洲综合在线| 欧美xxxx在线观看| 亚洲午夜91| 亚洲大片一区二区三区| 欧美写真视频网站| 99久久婷婷国产综合精品电影| 国产精品色一区二区三区| 蜜桃视频一区二区三区| 欧美成人国产一区二区| 国产精品分类| 天天综合日日夜夜精品| 在线播放91灌醉迷j高跟美女| 99这里只有精品| 亚洲精品视频免费观看| 欧美在线免费观看视频| 不卡视频在线观看| 亚洲精品国产无天堂网2021| 在线观看欧美黄色| av电影在线观看完整版一区二区| 国产精品理论片在线观看| 午夜一区在线| 国产91精品一区二区麻豆亚洲| 中文字幕 久热精品 视频在线 | 天天色综合成人网| 麻豆九一精品爱看视频在线观看免费| 久久国产日韩欧美精品| 精品国产一区二区三区不卡 | 337p日本欧洲亚洲大胆精品| 最新日韩在线| 精品一区二区精品| 国产日韩欧美a| 性色一区二区三区| 国产成人8x视频一区二区| 国产精品麻豆欧美日韩ww| 久热这里只精品99re8久| 国产·精品毛片| 亚洲乱码国产乱码精品精98午夜| 欧美日韩精品高清| 韩国亚洲精品| 久久99久久久欧美国产| 国产欧美日韩视频一区二区 | 欧美日韩在线一区二区| 国产精品地址| 久久疯狂做爰流白浆xx| 国产精品国产三级国产有无不卡 | 亚洲午夜精品久久久久久浪潮| 视频在线在亚洲| 国产偷v国产偷v亚洲高清| 在线观看网站黄不卡| 欧美日本国产| 美女视频免费一区| 中文av一区特黄| 欧美日免费三级在线| 91首页免费视频| 蜜桃视频一区二区三区在线观看| 国产精品久久久久影院亚瑟| 欧美日韩国产欧美日美国产精品| 国内精品久久久久久久97牛牛| 久久成人免费网站| 2020国产精品| 欧美日韩一区三区四区| 99av国产精品欲麻豆| 成人va在线观看| 日韩中文字幕91| 国产精品久久久久久久裸模 | 亚洲天堂精品视频| 日韩一区二区三区在线视频| 欧美综合国产| 欧美高清一区二区| 国产高清久久久久| 亚洲va欧美va天堂v国产综合| 欧美激情在线看| 欧美乱妇15p| 一区二区三区导航| 色综合天天做天天爱| 国模少妇一区二区三区| 亚洲高清免费视频| 国产精品二区一区二区aⅴ污介绍| 日韩欧美中文字幕精品| 色哟哟国产精品| 国产日韩欧美一区二区三区在线观看 | 欧美一区二区二区| 国产偷自视频区视频一区二区| 国产91在线看| 亚洲男同1069视频| 国产午夜亚洲精品不卡| 欧美伦理影视网| 久久资源av| 亚洲毛片播放| 色综合天天性综合| 粉嫩蜜臀av国产精品网站| 久久国产尿小便嘘嘘尿| 亚洲v中文字幕| 亚洲综合另类小说| 亚洲女厕所小便bbb|