从 PHP 到 AI + Golang,程序员自救转型手记(四十四):管理员账号管理
管理员账号管理管理员账号管理接口之前已经创建好了同时受益于基类的极大通用性准备好的现成的接口有/admin/auth/admin/list/admin/auth/admin/create/admin/auth/admin/delete/admin/auth/admin/get/pk/admin/auth/admin/update/pk回到前端我们可以利用 src\api\table.ts 中的 TableManagerAPI 表格API请求函数生成类一次性生成好请求以上接口的 请求函数如下const api new TableManagerAPI(‘/admin/auth/admin/’)对应api.get(pk)api.list(filter)// …但是生成好的 api 实例不是我们自己使用的而是直接传递给 表格管家 即可而初始化表格管家时最核心的是写好 table.column列定义数据代码如下import PopupForm from ‘./popupForm.vue’import { TableManagerAPI } from ‘//api/table’import { useTableManager } from ‘//hooks/useTableManager’const api new TableManagerAPI(‘/admin/auth/admin/’)const tableManager useTableManager({api,table: {column: [{ type: ‘selection’, align: ‘center’, operator: false },{ label: ‘ID’, prop: ‘id’, align: ‘center’, operator: ‘eq’, width: 70 },{ label: t(‘auth.admin.username’), prop: ‘username’, align: ‘center’, operator: ‘eq’, quickSearch: true },{ label: t(‘auth.admin.nickname’), prop: ‘nickname’, align: ‘center’, operator: ‘LIKE’, quickSearch: true },{ label: t(‘auth.admin.avatar’), prop: ‘avatar’, align: ‘center’, render: ‘image’, operator: false },{ label: t(‘common.email’), prop: ‘email’, width: 180, align: ‘center’, operator: ‘LIKE’ },{ label: t(‘common.mobile’), prop: ‘mobile’, align: ‘center’, operator: ‘LIKE’ },{label: t(‘common.operate’),align: ‘center’,width: ‘100’,render: ‘buttons’,buttons: optButtons,operator: false,},],filter: {sort: ‘created_at’,order: ‘desc’,},dblClickNotEditColumn: [‘status’],}})tableManager.getData()为保证可阅读性以上代码略有简化接下来将 表格管家 实例传递给 table 组件即可如下PopupForm :managertableManager v-model:form-itemstableManager.form.items! / /div这三个组件所需要的 props基本都可以通过 表格管家 实例取得。此时如果忽略掉 ./popupForm.vue 的代码管理员账号管理的功能最起码是基础的 CRUD 的功能已经完成了样子大概是这样的在这里插入图片描述是的增删改查齐备之所以这么简单全部是受益前几章的铺垫接下来就是表格的 新增 / 编辑 表单了但这更加简单你基本上可以理解为使用 el-form el-form-item 写一个普普通通的表单就行了绑定值与提交方法等全部都提前准备好了且如果需要表单验证也可以使用 buildValidatorRule 快速生成示例如下在这里插入图片描述

相关新闻

HashMap与LinkedHashMap深度解析:从无序哈希到有序链表的原理与实战选择

HashMap与LinkedHashMap深度解析:从无序哈希到有序链表的原理与实战选择

1. 从一次线上故障说起:为什么用了HashMap还会乱序?那天下午,监控系统突然报警,一个核心的订单处理服务响应时间飙升。我们紧急排查,发现一个奇怪的现象:系统向用户展示的“最近操作记录”列表,…

2026/10/13 4:32:06 阅读更多 →
Arduino IDE开发ATtiny44:从环境搭建到SPI编程实践

Arduino IDE开发ATtiny44:从环境搭建到SPI编程实践

1. 从ATtiny系列单片机说起:为什么是它?如果你玩过Arduino Uno或者Nano,对ATmega328P这颗芯片一定不陌生。但当你需要做一个超小型、超低功耗、功能又不太复杂的项目时,比如一个纽扣大小的蓝牙防丢器、一个智能盆栽的土壤湿度监测…

2026/10/13 9:22:47 阅读更多 →
职场情绪管理:避免下班后情绪反刍的实用技巧

职场情绪管理:避免下班后情绪反刍的实用技巧

1. 职场情绪管理的核心认知误区那天晚上十点半,我盯着电脑屏幕右下角跳动的数字,胃里翻腾着晚餐没消化完的油腻感。项目上线失败的挫败感像块石头压在胸口,手指机械地滑动着微信群里的指责消息。突然意识到——这已经是我连续第三周用整个晚上…

2026/10/13 16:24:05 阅读更多 →

最新新闻

基于一致性算法的分布式经济调度Matlab复现与收敛性分析

基于一致性算法的分布式经济调度Matlab复现与收敛性分析

拿到这个标着“完美复现”的题目,我先说结论:这个研究方向谈不上新,但它是分布式控制与电力系统优化结合得最漂亮的一个入门案例,特别适合用来建立“分布式思维”。题目说人话就是——多台发电机组要满足一个总负荷,没…

2026/10/14 22:34:01 阅读更多 →
RT-Thread信号量本质:资源协调而非加锁

RT-Thread信号量本质:资源协调而非加锁

1. 为什么信号量不是“加锁”而是“协调”——从一个死锁现场说起刚接触 RT-Thread 时,我下意识把信号量(Semaphore)当成和互斥锁(Mutex)差不多的东西:不就是“上锁—干活—解锁”三步走?直到在…

2026/10/14 22:34:01 阅读更多 →
CoNED沿海高程数据在GEE中的淹没模拟实践与避坑指南

CoNED沿海高程数据在GEE中的淹没模拟实践与避坑指南

做沿海洪水淹没评估、海平面上升情景推演、风暴潮风险制图这类工作,第一道坎几乎都卡在高程数据上。很多新手一开始去下载普通陆地DEM,拿到沿海区域一画就露馅:陆地部分看着还行,一到滩涂、河口、潮间带,要么是空的&am…

2026/10/14 22:34:01 阅读更多 →
两台Spark实测:16GB小主机如何跑稳长上下文Agent

两台Spark实测:16GB小主机如何跑稳长上下文Agent

两台 Spark 是什么?说白了,就是我自己手头两台配置差不多的本地算力小主机,我给它们起了个代号叫 Spark,一台负责跑推理服务,一台负责干 Agent 编排和杂活。这次专门拿它们来跑本地 Agent,核心就测一件事&a…

2026/10/14 22:34:01 阅读更多 →
Certbot泛域名SSL证书自动化部署与DNS-01验证实战

Certbot泛域名SSL证书自动化部署与DNS-01验证实战

1. 为什么泛域名证书不再是“高级玩家专属”——从手动折腾到一键签发的实操跃迁你有没有过这样的经历:给公司新上线的五个子站(admin.example.com、api.example.com、docs.example.com、blog.example.com、staging.example.com)逐个申请SSL证…

2026/10/14 22:34:01 阅读更多 →
漏检后的现场重建:高可靠性系统的逆向工程能力

漏检后的现场重建:高可靠性系统的逆向工程能力

1. 项目概述:这不是故障排查,是现场重建“一次漏检之后,最难的是把现场找回来”——这句话在某高校实验室的故障复盘会上被反复提起,后来成了某跨平台系统运维组内部流传最广的一句行话。它不是形容设备坏了、日志丢了、配置错了&…

2026/10/14 22:33:00 阅读更多 →

日新闻

AnyPS5通用适配层设计:兼容性与性能的工程取舍

AnyPS5通用适配层设计:兼容性与性能的工程取舍

1. 从"AnyPS5"这个名字说起:它到底想解决什么问题第一次看到"AnyPS5"这个标题,我脑子里冒出来的第一个念头是:这大概率是一个围绕"跨平台运行"或者"通用适配"做文章的项目。名字里的"Any"…

2026/10/14 0:00:41 阅读更多 →
Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

Flutter跨平台开发实战:二手交易应用与HarmonyOS适配

1. 项目概述:Flutter跨平台二手交易应用开发作为一名长期从事移动应用开发的工程师,我最近完成了一个基于Flutter框架的二手物品交易平台项目。这个项目最吸引我的地方在于它完美结合了Flutter的跨平台优势与HarmonyOS的生态特性,实现了"…

2026/10/14 0:00:41 阅读更多 →
DFS算法解决飞机降落调度问题实战

DFS算法解决飞机降落调度问题实战

1. 项目背景与核心思路飞机降落问题是一个经典的调度优化场景,也是算法竞赛和面试中的高频题目。这个题目要求我们合理安排多架飞机的降落顺序和时间,确保所有飞机都能安全着陆而不发生冲突。在实际航空管制中,这类问题直接关系到飞行安全和机…

2026/10/14 0:00:41 阅读更多 →

周新闻

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

流感时间序列预测实战:ARIMA/LSTM全流程拆解与避坑指南

简介:基于 ARIMA、LSTM、Transformer 等模型的流感时间序列预测 Python 源码,面向计算机相关专业课程设计与期末大作业学生,以及项目实战学习者。内容覆盖预处理、平稳性检验、定阶、残差分析、多模型对比预测的完整时序建模流程,…

2026/10/14 3:30:28 阅读更多 →
影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别

影刀RPA新手教程:键盘模拟输入实战——输入文本与模拟按键的区别 做影刀RPA自动化,十个新手有八个栽在"往输入框里填东西"这件事上:要么填不进去,要么填了一半,要么直接把原来内容追加在后面。这背后的根因&…

2026/10/14 16:30:29 阅读更多 →
影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容

影刀RPA新手教程:阅文起点小说数据采集实战——书籍信息与章节内容 1. 认识影刀:什么场景该用RPA采小说数据 起点中文网的页面结构相对稳定——分类榜单、书籍详情、章节内容三块独立页面,跳转链路清晰。这种场景非常适合影刀自动化&#x…

2026/10/14 3:29:58 阅读更多 →

月新闻

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 22:01:27 阅读更多 →
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/13 14:57:39 阅读更多 →
黑夜航拍船只数据集训练YOLOV5模型全流程解析

黑夜航拍船只数据集训练YOLOV5模型全流程解析

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/10/14 7:53:34 阅读更多 →