日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

xorm reverse

發布時間:2024/3/24 编程问答 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 xorm reverse 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

xorm reverse 反向映射數據庫表生成實體

  • 安裝go-xrom
  • go get -u github.com/go-xorm/cmd/xorm
  • 修改默認模板配置
    進到 %GOPATH%src/github.com/go-xorm/cmd/xorm/templates/goxorm 目錄下
    有兩個文件

    修改config配置:

    文檔有對genJson描述
    prefix 指實體映射時的前綴,添加即可在生成實體時,自動去除表名中的相應前綴
    例: 表名 t_user
    prefix 為空時 生成的對象文件 t_user.go 對象名 TUser ,
    為 t_ 時 生成的對象文件 user.go 對象名 User
    但如果在生成對象時將 t_ 作為前綴,在后續使用該對象時,也需要在生成session對象前
    將表的映射前綴添加上

    tbMapper := core.NewPrefixMapper(core.SnakeMapper{}, "t_") engine.SetTableMapper(tbMapper)
  • created、updated 添加表中字段名,作為默認映射關系

  • 使用命令生成實體
  • xorm reverse mysql user:password@tcp(127.0.0.1:3306)/tableName ../github.com/go-xorm/cmd/xorm/templates/goxorm ./app/model

    命令詳解:

    xorm help reverse usage: xorm reverse [-s] driverName datasourceName tmplPath [generatedPath] [tableFilterReg]according database's tables and columns to generate codes for Go, C++ and etc.-s Generated one go file for every tabledriverName Database driver name, now supported four: mysql mymysql sqlite3 postgresdatasourceName Database connection uri, for detail infomation please visit driver's project pagetmplPath Template dir for generated. the default templates dir has provide 1 templategeneratedPath This parameter is optional, if blank, the default value is models, then willgenerated all codes in models dirtableFilterReg Table name filter regexp

    附上未使用前綴生成的實體

    package modelimport ("time" )type TAdmin struct {AccountName string `json:"account_name" xorm:"comment('用戶真實姓名') VARCHAR(64)"`AdminId int `json:"admin_id" xorm:"not null pk comment('Id,主鍵字段') INT"`Avatar string `json:"avatar" xorm:"comment('用戶頭像地址') VARCHAR(255)"`CreatedAt time.Time `json:"created_at" xorm:"created comment('創建時間') DATETIME"`Email string `json:"email" xorm:"comment('用戶郵箱') VARCHAR(128)"`Enable int `json:"enable" xorm:"not null default 1 comment('是否啟用 默認1 啟用 0 停用') TINYINT"`Gender int `json:"gender" xorm:"default 0 comment('性別 0男 1女 2 未知') INT"`LoginName string `json:"login_name" xorm:"not null comment('用戶登錄名,工號字段') unique VARCHAR(64)"`NickName string `json:"nick_name" xorm:"comment('昵稱 用于展示') VARCHAR(64)"`Password string `json:"password" xorm:"comment('用戶密碼') VARCHAR(64)"`UpdatedAt time.Time `json:"updated_at" xorm:"updated comment('更新記錄時間') DATETIME"` }

    官方操作文檔
    github地址

    總結

    以上是生活随笔為你收集整理的xorm reverse的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。