Documentation ¶
Overview ¶
*
- Copyright 2015 @ at3.net.
- name : tool.go
- author : jarryliu
- date : 2016-11-11 12:19
- description :
- history :
Index ¶
- Constants
- Variables
- func DoUpdate(force bool) (bool, error)
- func GetOrmTypeFromGoType(typeName string) int
- func IntVersion(s string) int
- func IsCodeFile(ext string) bool
- func ParseStructName(name string) string
- func SaveFile(s string, path string) error
- type Column
- type ColumnMeta
- type GenerateHandler
- type GoSession
- type LANG
- type Options
- type PropRenderOptions
- type Registry
- type RegistryReader
- type RunnerCalc
- type Session
- type Table
- type TableConfig
- type TableMeta
- type Template
- type TemplateKind
- type TemplatePackageInfo
Constants ¶
View Source
const ( // 基础URL BASE_URL = "base_url" // 基础路径 BASE_PATH = "base_path" // 包名 PKG = "pkg" // 实体后缀,默认:Entity ENTITY_SUFFIX = "entity_suffix" // 当前时间 TIME = "time" // 版本 VERSION = "version" // 当前用户 USER = "user" )
View Source
const ( // 普通模板 KindNormal = TemplateKind(0) // 使用所有表生成模板 KindTables = TemplateKind(1) // 按表前缀生成模板 KindTablePrefix = TemplateKind(2) )
View Source
const BuildVersion = "0.5.7"
BuildVersion 版本号
View Source
const ReleaseCodeHome = "https://github.com/ixre/tto"
ReleaseCodeHome 代码页
Variables ¶
View Source
var ( GoEntityRepTemplate = NewTemplate(golang2.TPL_ENTITY_REP, "", true) GoEntityRepIfceTemplate = NewTemplate(golang2.TPL_ENTITY_REP_INTERFACE, "", true) GoRepoFactoryTemplate = NewTemplate(golang2.TPL_REPO_FACTORY, "", true) )
View Source
var CompactMode = false
CompactMode 兼容模式
View Source
var README []byte
Functions ¶
func GetOrmTypeFromGoType ¶
func IntVersion ¶
func IsCodeFile ¶
Types ¶
type Column ¶
type Column struct { // 顺序 Ordinal int // 列名 Name string // 列名首字大写 Prop string // 是否主键 IsPk bool // 是否自动生成 IsAuto bool // 是否不能为空 NotNull bool // 类型 DbType string // 注释 Comment string // 长度 Length int // Go类型 Type int // 输出选项 Render *PropRenderOptions }
Column 列
type ColumnMeta ¶
type ColumnMeta struct { // 标题 Title string `json:"title"` // 显示设置 Render *PropRenderOptions `json:"render"` }
ColumnMeta
type GenerateHandler ¶ added in v0.5.7
代码处理
type LANG ¶
type LANG = string
const ( L_Unknown LANG = "" L_GO LANG = "go" L_JAVA LANG = "java" L_CSharp LANG = "csharp" L_TypeScript LANG = "typescript" L_Kotlin LANG = "kotlin" L_Python LANG = "python" L_Thrift LANG = "thrift" L_Protobuf LANG = "protobuf" L_PHP LANG = "php" L_Rust LANG = "rust" L_Dart LANG = "dart" L_Shell LANG = "shell" )
type PropRenderOptions ¶
type PropRenderOptions struct { // 是否可见 Visible bool `json:"visible"` // 显示元素 Element string `json:"element"` // 如果Element为select,radio时可用 Options map[string]string `json:"options"` }
PropRenderOptions
type Registry ¶
type Registry struct {
// contains filtered or unexported fields
}
func LoadRegistry ¶
func (Registry) GetBoolean ¶
type RegistryReader ¶
RegistryReader custom registry
func GetRegistry ¶
func GetRegistry() *RegistryReader
type RunnerCalc ¶
type RunnerCalc struct { TablesRuns bool // contains filtered or unexported fields }
计数器
func NewRunnerCalc ¶
func NewRunnerCalc() RunnerCalc
func (*RunnerCalc) SignState ¶
func (c *RunnerCalc) SignState(key string, b bool)
func (*RunnerCalc) State ¶
func (c *RunnerCalc) State(key string) bool
type Session ¶
type Session interface { // add or update variable Var(key string, v interface{}) // set code package Package(pkg string) // 使用大写ID,默认为false UseUpperId() // 添加函数 AddFunc(fnTag string, fnBody interface{}) // 返回所有的变量 AllVars() map[string]interface{} // 生成代码 GenerateCode(table *Table, tpl *Template, g GenerateHandler) string // 生成所有表的代码, 可引用的对象为global 和 tables GenerateCodeByTables(tables []*Table, tpl *Template, g GenerateHandler) string // 遍历模板文件夹, 并生成代码, 如果为源代码目标,文件存在,则自动生成添加 .gen后缀 WalkGenerateCodes(tables []*Table, g GenerateHandler) error // 转换表格,如果meta为true,则读取元数据,如果没有则自动生成元数据 Parses(tables []*db.Table, meta bool) (arr []*Table, err error) // 清理生成目录 Clean() error }
Session 生成器会话
type Table ¶
type Table struct { // 顺序 Ordinal int // 表名 Name string // 表前缀 Prefix string // 表名单词首字大写 Title string // 简短的标题,通常去掉前缀 ShortTitle string // 表注释 Comment string // 数据库引擎 Engine string // 架构 Schema string // 数据库编码 Charset string // 表 Raw *db.Table // 主键 Pk string // 主键属性 PkProp string // 主键类型编号 PkType int // 列 Columns []*Column }
Table 表
func ReverseParseTable ¶ added in v0.5.7
/ 从文本中读取表信息,逆向转换表
type TableConfig ¶
type TableConfig struct { // 结构元数据 Struct *TableMeta `json:"struct"` // 字段元数据 Fields map[string]*ColumnMeta `json:"field"` }
type Template ¶ added in v0.5.7
type Template struct {
// contains filtered or unexported fields
}
func (*Template) Kind ¶ added in v0.5.7
func (g *Template) Kind() TemplateKind
type TemplateKind ¶
type TemplateKind int
type TemplatePackageInfo ¶ added in v0.5.7
type TemplatePackageInfo struct { // 包名 PackageName string `json:"packageName"` // 模板名称 TemplateName string `json:"templateName"` // 作者 Author string `json:"author"` // 模板网址 Url string `json:"url"` // 版本号 Version string `json:"version"` // 最后更新时间 LastUpdate string `json:"lastUpdate"` }
TemplatePackageInfo 模板包信息
func ResolveTemplatePackage ¶ added in v0.5.7
func ResolveTemplatePackage(path string) *TemplatePackageInfo
ResolveTemplatePackage 解析模板包信息
Source Files ¶
Click to show internal directories.
Click to hide internal directories.