golang-gin-mysql转gorm-struct--gen-model

news/2024/11/16 20:37:18/

背景:python-django项目用go-gin重构,数据库已存在,gin中使用gorm 所以需要工具将mysql数据库中的表结构转到orm的model中。

前提:因为国内访问github需要稳定的代理

Goproxy.cn  推荐这个

1.在项目路径中下载gen-model模块 

go get -u github.com/DaoYoung/gen-model

# GOBIN 目录下会有一个gen-model.exe

# 如果安装失败--:https://github.com/DaoYoung/gen-model 下载源代码,进到gen-model, 手动  go install

Usage

  1. run init command, you will see .gen-model.yaml
cd ${your_project_dir}
gen-model init
  1. change mysql.* gen.searchTableName value in .gen-model.yaml, then run

 

gen-model create
  1. create local mappers for struct
gen-model create --persist=local-mapper# it will fail, when run after step 2, because struct file is already exist, it's avoid to cover whole file. you can set `-f=true` to cover it.gen-model create --persist=local-mapper -f=true

  1. rename mapper file from ${struct}FieldMapper.yaml to ${struct}VOFieldMapper.yaml, and delete one line after fields
gen-model create --source=local-mapper --forceCover=true --modelSuffix=VO
# it will generate `${struct}VO.go`

  1. persist mapper data in database just use db-mapper instead of local-mapper.
gen-model create --persist=db-mapper --forceCover=true
# it means, you can manage struct for multiple project.
# this require mysql `Create` privilege
  1. see what gen-model can do.
gen-model -h
gen-model create -h # commend `create` help

 


http://www.ppmy.cn/news/403031.html

相关文章

什么是病毒,什么是木马,两者到底有什么区别

只要是计算机都会遇到木马与病毒的威胁,但很多时候大家把病毒与木马的含义混为一谈,认为病毒就是木马,木马就是病毒,其实这观点并不是正确的,这两者之间区分还是挺大的。 什么是病毒 早在计算机管理条列法中规定&…

Android双清卸载木马,刷机如何清除木马病毒

一些手机顽固木马病毒,普通杀毒根本清理不干净的,只能选择刷机了,那么,刷机如何清除木马病毒呢? 刷机,是指通过一定的方法更改或替换手机中原本存在的一些语言、图片、铃声、软件或者操作系统,通…

解释:什么是木马、蠕虫、病毒

木马 是一种看上去有用或者无害的程序,它以正常程序作为伪装。在用户许可其通行的情况下,木马令用户毫不知情地将其安装到计算机中,但却包含了以破坏系统为目的的隐藏代码在其中,是常用的攻击技术,严重危害计算机安全。…

木马是什么意思?

木马又被称为木马病毒,是指隐藏在正常程序中的一段具有特殊功能的恶意代码,木马程序表面上是无害的,甚至对没有警戒的用户还颇有吸引力,它们经常隐藏在游戏或图形软件中,但它们却隐藏着恶意。这些表面上看似友善的程序…

lnk文件木马

最早出现是几年前, 最近几年貌似蛮流行的. 微软官方对lnk文件的介绍 phrozen的三篇文章: shortcut as entrypoint of malware part1 shortcut as entrypoint of malware part2 shortcut as entrypoint of malware part2 主要内容概括: 第一篇讲到建立快捷方式, 然后在快捷方式…

什么是木马和反弹木马?

什么是木马? 特洛伊木马(以下简称木马),英文叫做“ Trojan house” ,其名称取自希腊神话的特洛伊木马记。 它是一种基于远程控制的黑客工具,具有隐蔽性和非授权性的特点。 所谓隐蔽性是指木马的设计者为了防止木马被发现,会采…

木马是个什么东西

木马,也称特洛伊木马,英文名称为T r o j a n H o r s e ,是借自“木马屠城记”中那只木马的名字。古希腊有大军围攻特洛伊城,久久不能得手。有人献计制造一只高二丈的大木马假装作战马神,攻击数天后仍然无功&#xff0…