当前位置: 首页 > news >正文

Go语言+Vue3开发前后端后台管理系统实战 用户管理的前端界面和表结构分析

首页:
在这里插入图片描述

用户管理界面:
在这里插入图片描述
到这一步以后来看一下后端代码的表结构是如何设计的:

后端代码中,使用的操作MySQL的技术是gorm:

gorm.io/gorm v1.25.5

在这里插入图片描述

其中,用户表的定义位置如下:
在这里插入图片描述

此时的完整代码如下:

package authorityimport ("server/global"
)// UserModel 用户表对应的gorm模型
type UserModel struct {global.BaseModelUsername    string `json:"username" gorm:"index;unique;comment:用户名" binding:"required"` // 用户名Password    string `json:"-"  gorm:"not null;comment:密码"`Phone       string `json:"phone"  gorm:"comment:手机号"`                          // 手机号Email       string `json:"email"  gorm:"comment:邮箱" binding:"omitempty,email"` // 邮箱Active      bool   `json:"active"`                                             // 是否活跃RoleModelID uint   `json:"roleId" gorm:"not null" binding:"required"`          // 角色ID
}// TableName gorm 实现自定义表名的方式
func (UserModel) TableName() string {return "authority_user"
}

这里用到了一个全局通用的基础模型,代码如下:

// BaseModel gorm 通用基础模型
type BaseModel struct {ID        uint           `json:"id" gorm:"primarykey"` // 主键IDCreatedAt time.Time      `json:"createdAt"`            // 创建时间UpdatedAt time.Time      `json:"updatedAt"`            // 更新时间DeletedAt gorm.DeletedAt `json:"-" gorm:"index"`       // 删除时间
}

在数据库中,用户表的数据结构如下:
在这里插入图片描述

主要包括:

  • username,用户名
  • password,密码
  • phone,手机号
  • email,邮箱
  • active,是否激活
  • role_model_id,角色ID,用于给用户绑定角色

我们再来看看用户管理功能在前端界面是如何显示的:
在这里插入图片描述

界面上哟孤儿新增按钮,通过这个按钮,可以实现新增用户的功能,点击按钮弹出界面如下:
在这里插入图片描述

表单结构如下:
在这里插入图片描述

点击编辑按钮时,会弹出一个表单,表单如下:
在这里插入图片描述

点击修改密码时会弹出一个表单,表单结构如下:
在这里插入图片描述

不过很明显,我们并不能直接一上来就做用户管理相关的功能,因为在新增用户的时候有一个表单,这个表单里面关于角色是通过下拉框选择的,必须要先有角色,才能有用户。所以我们需要先把角色管理的功能做好。

下个文章我们分析角色管理是如何实现的。

如果您要本套管理系统的完整代码或者视频课程,可以留言哦。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • MySQl 中对数据表的增删改查(基础)
  • 软件测试下的AI之路(6)
  • Python万字长文基础教程第四章:函数
  • 用openssl 创建自签名证书用于内网HTTPS
  • 云原生与微服务
  • 【CS.DB】数据库-关系型数据库-MySQL-3.3.创建和管理表
  • 【NPM】使用教程
  • Prometheus监控的搭建(ansible安装——超详细)
  • 力扣第五十七题——插入区间
  • STM32常见的下载方式有三种
  • PHP回调后门
  • 实验28.文件删除 sys_unlink
  • 微信小程序实战教程-1:京西购物商城实战
  • 【数据结构】B树
  • 【物联网】(指纹篇)在指纹录入的流程中,如何确保指纹信息的准确性?
  • 2018以太坊智能合约编程语言solidity的最佳IDEs
  • Cookie 在前端中的实践
  • gitlab-ci配置详解(一)
  • JWT究竟是什么呢?
  • k8s如何管理Pod
  • Linux快速配置 VIM 实现语法高亮 补全 缩进等功能
  • OpenStack安装流程(juno版)- 添加网络服务(neutron)- controller节点
  • PAT A1050
  • Sass 快速入门教程
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • vue--为什么data属性必须是一个函数
  • 翻译:Hystrix - How To Use
  • 力扣(LeetCode)56
  • -- 数据结构 顺序表 --Java
  • 思否第一天
  • CMake 入门1/5:基于阿里云 ECS搭建体验环境
  • 长三角G60科创走廊智能驾驶产业联盟揭牌成立,近80家企业助力智能驾驶行业发展 ...
  • #AngularJS#$sce.trustAsResourceUrl
  • #Datawhale AI夏令营第4期#AIGC文生图方向复盘
  • #微信小程序:微信小程序常见的配置传值
  • $.ajax()方法详解
  • (06)金属布线——为半导体注入生命的连接
  • (PHP)设置修改 Apache 文件根目录 (Document Root)(转帖)
  • (附源码)springboot家庭装修管理系统 毕业设计 613205
  • (南京观海微电子)——COF介绍
  • (切换多语言)vantUI+vue-i18n进行国际化配置及新增没有的语言包
  • (十二)springboot实战——SSE服务推送事件案例实现
  • (一)Mocha源码阅读: 项目结构及命令行启动
  • (最简单,详细,直接上手)uniapp/vue中英文多语言切换
  • .net core + vue 搭建前后端分离的框架
  • .net 流——流的类型体系简单介绍
  • .NET 事件模型教程(二)
  • .net 写了一个支持重试、熔断和超时策略的 HttpClient 实例池
  • .NET/C# 判断某个类是否是泛型类型或泛型接口的子类型
  • .Net6 Api Swagger配置
  • .NET设计模式(11):组合模式(Composite Pattern)
  • .net下的富文本编辑器FCKeditor的配置方法
  • .Net下的签名与混淆
  • .NET学习教程二——.net基础定义+VS常用设置
  • /boot 内存空间不够