<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          model-genGo 專用的模型生成器

          聯(lián)合創(chuàng)作 · 2023-09-28 02:50

          model-gen 是一個Go 專用的模型生成器。

          原理

          通過獲取 mysql 表結(jié)構(gòu),進(jìn)行 model 文件生成。

          迭代

          目前支持 mysql,未來預(yù)計支持 mariadb 和 pgsql (sql server 還未考量)

          快速入門

          代碼:

          	    mysqlHost := "127.0.0.1"
              	mysqlPort := "3306"
              	mysqlUser := "root"
              	mysqlPassword := "sa"
              	mysqlDbname := "blog"
              
              	dsn := mysqlUser + ":" + mysqlPassword + "@tcp(" + mysqlHost + ":" + mysqlPort + ")/" + mysqlDbname + "?charset=utf8mb4"
              
              	Mysql := GetMysqlToGo()
              	Mysql.Driver.SetDsn(dsn)
              	Mysql.SetModelPath("/tmp")
              	Mysql.SetIgnoreTables("cate")
              	Mysql.SetPackageName("models")
              	Mysql.Run()
          

          執(zhí)行結(jié)果:

          ll /tmp
          
          total *
          -rw-r--r--  1 limars  wheel  297 12 18 17:59 cate.go
          -rw-r--r--  1 limars  wheel  597 12 18 17:59 comment.go
          -rw-r--r--  1 limars  wheel  826 12 18 17:59 content.go
          ......
          
          cat cate.go
          
          package models
          
          type Cate struct {
          	Id         int    `orm:"id" json:"id"`
          	Name       string `orm:"name" json:"name"`
          	CreateTime string `orm:"create_time" json:"create_time"`
          	UpdateTime string `orm:"update_time" json:"update_time"`
          }
          
          func (cate *Cate) GetTableName() string {
          	return "cate"
          }
          

          附帶上sql:

          CREATE DATABASE `blog`;
          
          USE `blog`;
          
          CREATE TABLE `cate` (
            `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
            `name` varchar(50) NOT NULL DEFAULT '',
            `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
            `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
            PRIMARY KEY (`id`)
          ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
          
          
          
          CREATE TABLE `comment` (
            `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
            `blog_id` int(11) unsigned NOT NULL,
            `parent_id` int(11) unsigned NOT NULL DEFAULT '0',
            `ip` varchar(32) NOT NULL DEFAULT '',
            `email` varchar(255) NOT NULL DEFAULT '',
            `name` varchar(50) NOT NULL DEFAULT '',
            `content` tinytext NOT NULL,
            `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
            `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
            `status` tinyint(1) unsigned NOT NULL DEFAULT '1',
            PRIMARY KEY (`id`)
          ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
          
          
          CREATE TABLE `content` (
            `id` int(11) unsigned NOT NULL AUTO_INCREMENT,
            `cate_id` int(11) unsigned NOT NULL COMMENT '分類id',
            `title` varchar(255) NOT NULL DEFAULT '' COMMENT '標(biāo)題',
            `description` tinytext NOT NULL COMMENT '簡介',
            `content` text NOT NULL COMMENT '正文',
            `keyword` varchar(255) NOT NULL DEFAULT '' COMMENT 'seo關(guān)鍵字',
            `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP,
            `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
            `status` tinyint(1) unsigned NOT NULL DEFAULT '1',
            `is_original` tinyint(1) NOT NULL DEFAULT '1' COMMENT '1 原創(chuàng)  2 轉(zhuǎn)載',
            `ext` text NOT NULL COMMENT '擴(kuò)展字段',
            PRIMARY KEY (`id`)
          ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;

           

          瀏覽 25
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報
          評論
          圖片
          表情
          推薦
          點(diǎn)贊
          評論
          收藏
          分享

          手機(jī)掃一掃分享

          編輯 分享
          舉報
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  青娱乐成人免费视频 | 夜色国产精品 | 国产成人精品亚洲777人妖 | 欧美日韩18禁 | 日本在线不卡一区 |