开源博客项目Blog .NET Core源码学习(23:App.Hosting项目结构分析-11)

  本文学习并分析App.Hosting项目中后台管理页面的标签管理页面、轮播图维护页面。

标签管理页面

  标签管理页面用于显示、检索、新建、编辑、删除标签数据,以便在前台页面的首页及文章专栏等页面显示标签数据。标签管理页面附带一新建及编辑页面,以支撑新建和编辑标签数据。整个页面使用了layui中的表格、表单、颜色选择器等样式或模块,并未使用独立的js文件,而是直接在页面内嵌js代码,并调用BlogManage/TagsController的相关函数处理数据。
在这里插入图片描述

  标签管理页面的上半部分显示搜索框,下半部分以表格形式显示全部标签数据或者检索结果。
在这里插入图片描述
  内置的js代码主要用于设置表格样式及处理事件,同时处理搜索事件。调用layui的table.render函数设置表格样式,主要包括:
  1)用elem属性设置表格容器元素,同时用url设置调用BlogManage/TagsController的Index函数分页获取所有标签数据;
  2)用limit、limits、page属性设置数据分页显示;
  3)用toolbar属性设置头部工具栏,指定的元素id定义在_AminLayout.cshtml内,且根据不同的页面显示不同的工具栏内容,在本页面中工具栏中有添加按钮(按钮在系统管理->按钮管理中配置);
  4)用where属性设置调用Index时附加的其它参数;
  5)用cols属性设置表格显示列,其中第一列采用type:‘number’设置为序号列,其它列对应Index函数返回值的属性并以sort属性设置可排序性,标签状态列(对应字段EnableMark)采用templet属性以模版函数方式设置以表单中的开关样式显示属性值,最后一列用templet属性以模版选择器形式指定_AminLayout.cshtml文件中定义的按钮模版(按钮在系统管理->按钮管理中配置)。

在这里插入图片描述
  除上述设置之外,还定义了工具栏、操作按钮、排序事件、检索按钮的响应函数,排序和检索的处理逻辑类似,使用table.reload调用BlogManage/TagsController的Index函数获取并显示结果,其余的添加、编辑和删除按钮中,删除按钮的事件处理函数逻辑为调用BlogManage/TagsController的Delete函数删除数据,然后使用table.reload重载页面数据。
在这里插入图片描述

  调用form.on('switch(enabled)'设置表格中标签状态列开关事件的事件处理函数,其内部调用tools.submitConfrim函数提示用户是否在启用和禁用间切换,确定的话则调用BlogManage /TagsController的Enable函数更新标签状态,同时更新页面数据,取消的话则还原标签状态列之前的显示值。
在这里插入图片描述
  新建和编辑标签数据使用的同一页面,位置为BlogManage\Views\Tags\Form.cshtml页面,使用layui的表单组件、颜色选择器组件设置样式。如果是新建标签,则直接弹出页面,主页面会通过url传递total参数以初始化新数据的默认顺序号,而编辑数据的话,主页面会通过url传递key参数,在编辑页面中调用BlogManage/TagsController的Detail函数获取标签数据初始化编辑页面的对应元素数据。新建或编辑完成后,主页面的js中设置了回调函数,最终调用BlogManage/TagsController的Form函数新增或更新数据。
在这里插入图片描述

轮播图维护页面

  轮播图维护页面用于显示、新建、编辑、删除标签数据,以便在前台页面的首页循环显示轮播图。轮播图维护页面附带一新建及编辑页面,以支撑新建和编辑轮播图数据。整个页面使用了layui中的表格、表单、上传组件、弹出层等样式或模块,并未使用独立的js文件,而是直接在页面内嵌js代码,并调用BlogManage/BannerController的相关函数处理数据。
在这里插入图片描述
  轮播图维护页面仅包含单个元素以表格形式显示全部轮播图数据或者检索结果。

<table id="laytable" lay-filter="bannerList"></table>

  内置的js代码主要用于设置表格样式及处理事件。调用layui的table.render函数设置表格样式,主要包括:
  1)用elem属性设置表格容器元素,同时用url设置调用BlogManage/BannerController的Index函数分页获取所有轮播图数据;
  2)用limit、limits、page属性设置数据分页显示;
  3)用toolbar属性设置头部工具栏,指定的元素id定义在_AminLayout.cshtml内,且根据不同的页面显示不同的工具栏内容,在本页面中工具栏中有添加按钮(按钮在系统管理->按钮管理中配置);
  4)用where属性设置调用Index时附加的其它参数;
  5)用cols属性设置表格显示列,其中第一列采用type:‘number’设置为序号列,其它列对应Index函数返回值的属性,打开方式列(对应字段Link)和图片列(对应字段ImgUrl)采用templet属性以模版函数方式设置显示属性值,最后一列用templet属性以模版选择器形式指定_AminLayout.cshtml文件中定义的按钮模版(按钮在系统管理->按钮管理中配置)。

在这里插入图片描述
  除上述设置之外,还定义了工具栏、操作按钮、点击事件的响应函数,同时删除按钮的事件处理函数逻辑为调用BlogManage/BannerController的Delete函数删除数据,然后使用table.reload重载页面数据。
在这里插入图片描述
  新建和编辑轮播图数据使用的同一页面,位置为BlogManage\Views\Banner\Form.cshtml页面,使用layui的表单组件设置样式,同时使用上传组件上传图片。如果是新建轮播图,则直接弹出页面,主页面会通过url传递total参数以初始化新数据的默认顺序号,而编辑数据的话,主页面会通过url传递key参数,在编辑页面中调用BlogManage/BannerController的Detail函数获取轮播图数据初始化编辑页面的对应元素数据,同时调用BlogManage/BannerController的UploadImg函数上传图片文件。新建或编辑完成后,主页面的js中设置了回调函数,最终调用BlogManage/BannerController的Form函数新增或更新数据。
在这里插入图片描述
参考文献:
[1]https://gitee.com/miss_you/Blog
[2]https://layui.dev/docs/2/
[3]https://animate.style/

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/653820.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

Python中的数据可视化:桑基图Sankey

【小白从小学Python、C、Java】 【考研初试复试毕业设计】 【Python基础AI数据分析】 Python中的数据可视化&#xff1a; 桑基图 Sankey [太阳]选择题 根据给定的Python代码&#xff0c;哪个选项是正确的&#xff1f; import matplotlib.pyplot as plt from matplotlib.sanke…

香橙派 AIpro的NPU随手记体验日记

昇腾AI 技术路线 8TOPS INT8&#xff08;FP16&#xff09;AI算力 LPDDR4X 8GB/16GB &#x1f4c5; 20240525 开放了原理图和源码&#xff0c;功能接口就不描述了手册都有描述&#xff0c;新手好好学习可以从底层覆盖到应用一个载板拿下 完成香橙派AIpro上手体验 镜像安装&am…

科技查新是什么?一文了解!

本文主要解答 1、什么是科技查新&#xff1f; 2、科技查新有哪些作用&#xff1f; 3、科技查新一般应用于什么地方&#xff1f; 4、在哪能出具正规查新报告&#xff1f; 5、科技查新流程是怎样的&#xff1f; 带着这些问题阅读这篇文章相信一定会有收获&#xff01;干活内…

大模型备案VS算法备案:差异、要求与合规快照

​下图为最新的直至第五批深度合成服务算法备案信息的公告 根据目前公开的国内大模型算法备案统计来看&#xff0c;首批境内深度合成服务算法备案清单&#xff0c;总共通过了五批。 以第二批举例&#xff0c;境内深度合成服务算法备案清单&#xff0c;总共通过110家&#xff0…

Nginx企业级负载均衡:技术详解系列(13)—— 四层访问控制

你好&#xff0c;我是赵兴晨&#xff0c;97年文科程序员。 今天&#xff0c;咱们聊聊Nginx的一个核心功能——四层访问控制。 废话不多说&#xff0c;让我们直接进入正题&#xff0c;一探究竟&#xff01; 四层访问控制 Nginx的四层访问控制指的是在传输层&#xff08;TCP层…

【C++】vector常见的使用方式

前言&#xff1a;在上一篇中我们讲到了string类的模拟实现&#xff0c;今天我们将进一步的去学习vector的一些常用的使用方法。 &#x1f496; 博主CSDN主页:卫卫卫的个人主页 &#x1f49e; &#x1f449; 专栏分类:高质量&#xff23;学习 &#x1f448; &#x1f4af;代码仓…

简单的利用有限脉冲响应(FIR)滤波器对心电信号进行降噪(Python)

代码很简单。 import numpy as np import matplotlib.pyplot as plt#------------------------Bandstop Filter Function------------------------ def bandstop(M,low,high,Fs):#50Hz removalk1 int( (low/Fs)*M) # index 22k2 int( (high/Fs)*M) # index 27#DC removalk0 …

【头歌】计算机网络DHCP服务器配置第四关配置路由器子接口答案

头歌计算机网络DHCP服务器配置第四关配置路由器子接口操作步骤 任务描述 本关任务&#xff1a;配置路由器的子接口。 操作要求 在第一关的拓扑图的基础上&#xff0c;配置路由器及 PC 机&#xff0c;具体要求如下&#xff1a; 1、打开路由器物理接口 F0/0 &#xff1b; 2、配置…

安全攻防三

一、IDS: 当黑客绕过了防火墙&#xff0c;你该如何发现&#xff1f; IDS &#xff08;Intrusion Detection System&#xff0c;入侵检测系统&#xff09; NIDS 内网中检测网络流量攻击 黑客如果已经进去内网&#xff0c;防火墙就没办法保护了 NIDS部署在交换机和路由器这些路…

基于Vue的自定义服务说明弹窗组件的设计与实现

基于Vue的自定义服务说明弹窗组件的设计与实现 摘要 随着技术的不断发展&#xff0c;前端开发面临着越来越高的复杂性和不断变化的需求。传统开发方式往往将整个系统构建为整块应用&#xff0c;这导致对系统的任何微小改动都可能触发整体的逻辑变更&#xff0c;从而增加了开发…

软件测试/测试开发丨学习笔记之Allure2测试报告

Allure2测试报告 1、使用 Allure2 运行方式-Python 1&#xff09;–alluredir 参数生成测试报告。 在测试执行期间收集结果 pytest [测试用例/模块/包] --alluredir./result/ (—alluredir这个选项 用于指定存储测试结果的路径)#生成在线的测试报告 allure serve ./result2…

第一个Flutter3项目

配置flutter国内源 首先&#xff0c;配置flutter的国内源&#xff1a; env:PUB_HOSTED_URL"https://pub.flutter-io.cn"; env:FLUTTER_STORAGE_BASE_URL"https://storage.flutter-io.cn"配置gradle国内源 修改gradle\wrapper\gradle-wrapper.properties…

埃隆·马斯克的 xAI 募集 60 亿美元,瞄准 AI 超级计算机|TodayAI

埃隆马斯克&#xff08;Elon Musk&#xff09;创立的人工智能公司 xAI 宣布成功募集了 60 亿美元的资金&#xff0c;用于推动其“首批产品推向市场&#xff0c;建立先进的基础设施&#xff0c;并加速未来技术的研发”。马斯克透露&#xff0c;xAI 目前的估值已达到 180 亿美元&…

kafka-消费者组-点对点测试

文章目录 1、点对点测试1.1、获取 kafka-consumer-groups.sh 的帮助信息1.2、列出所有的消费者组1.3、创建消费者1并指定组 my_group11.4、创建消费者2并指定组 my_group11.5、创建消费者3并指定组 my_group11.6、创建生产者发送消息到 my_topic1 主题 1、点对点测试 1.1、获取…

记.netcore部署到银河麒麟linux服务器过程详解

一.服务器配置 操作系统:银河麒麟桌面操作系统V10 CPU:intel i5 内存:16G 内核:5.10.0.8-generic 未激活 二.运行环境安装 .netcore 6.0 runtime时安装下载离线包 Download .NET 6.0 (Linux, macOS, and Windows) -下载完后进行解压 sudo su #提权 mkdir -p $HOME/…

LeetCode1161最大内层元素和

题目描述 给你一个二叉树的根节点 root。设根节点位于二叉树的第 1 层&#xff0c;而根节点的子节点位于第 2 层&#xff0c;依此类推。请返回层内元素之和 最大 的那几层&#xff08;可能只有一层&#xff09;的层号&#xff0c;并返回其中 最小 的那个。 解析 在上一题&…

如何在线转换图片的格式?一键修改图片格式的方法

图片是日常生活和工作中的一种常用的内容展示类型&#xff0c;在使用图片的时候不同用途需要使用的图片格式也是不同的&#xff0c;比如我们手中有一张jpg格式图片&#xff0c;但是平台上传要求格式是png&#xff0c;那么怎样才能将jpg转png格式呢&#xff1f;下面将教大家图片…

乡村振兴的实践与探索:以生态优先、绿色发展为导向,推动农村人居环境整治,建设美丽宜居乡村

一、引言 随着我国经济社会的快速发展&#xff0c;乡村振兴成为了新时代的重要战略。在这一背景下&#xff0c;以生态优先、绿色发展为导向的乡村振兴模式成为了重要的实践方向。本文旨在探讨如何通过生态优先、绿色发展的理念&#xff0c;推动农村人居环境整治&#xff0c;建…

洁净环境测试标准、监测计划要点及风险评估注意事项

洁净区日常环境监测 洁净区环境监测作为污染控制策略&#xff08;CCS&#xff09;的重要组成部分&#xff0c;用于监测旨在将粒子和微生物污染风险降至最低的控制措施。下面内容&#xff0c;中邦兴业小编将与大家做个详细的分享。 环境监测计划 评估和定义粒子、微生物监测所…

智慧城市运维可视化:透视未来城市高效管理的新视窗

行业痛点 现代城市运维是一个复杂而庞大的系统&#xff0c;涉及到诸多方面&#xff0c;包括交通、环境、能源等等。然而&#xff0c;在城市运维中&#xff0c;存在着一些现实的痛点&#xff0c;给城市管理者带来了不小的压力和困扰&#xff1a; 1、交通拥堵 随着城市化进程的…