Documentation
¶
Index ¶
- func DaoTemplatePath() string
- func DtoTemplatePath() string
- func FrameworkPrefix() string
- func GenerateDao(schema model.Schema, templateContent, outputFilePath string) (err error)
- func GenerateDaoCode(schema model.Schema, templateContent string) (code string, err error)
- func GenerateDaos(schemas []model.Schema) (err error)
- func GenerateDto(schema model.Schema, templateContent, outputFilePath string) (err error)
- func GenerateDtoCode(schema model.Schema, templateContent string) (code string, err error)
- func GenerateDtos(schemas []model.Schema) (err error)
- func GenerateModel(schema model.Schema, templateContent, outputFilePath string) (err error)
- func GenerateModelCode(schema model.Schema, templateContent string) (code string, err error)
- func GenerateModels(schemas []model.Schema) (err error)
- func GenerateTool(templateContent, outputFilePath string) (err error)
- func GenerateToolCode(templateContent string) (code string, err error)
- func GenerateTools() (err error)
- func GenerateVO(schema model.Schema, templateContent, outputFilePath string) (err error)
- func GenerateVoCode(schema model.Schema, templateContent string) (code string, err error)
- func GenerateVos(schemas []model.Schema) (err error)
- func GetGoType(col model.Column) string
- func IsSnakeCaseStyle(columns []model.Column) bool
- func PoTemplatePath() string
- func ToCamelCase(s string) string
- func ToJsonTag(fieldName, suffix string, columns []model.Column) string
- func ToPascalCase(s string) string
- func ToSafeParamName(s string) string
- func ToolTemplateDir() string
- func ToolTemplatePath(templateName string) string
- func TrimPointer(s string) string
- func TrimPrefix(s, prefix string) string
- func VoTemplatePath() string
- type TemplateData
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func DaoTemplatePath ¶
func DaoTemplatePath() string
func DtoTemplatePath ¶
func DtoTemplatePath() string
func FrameworkPrefix ¶
func FrameworkPrefix() string
func GenerateDao ¶
func GenerateDaoCode ¶
func GenerateDaos ¶
func GenerateDto ¶
func GenerateDtoCode ¶
func GenerateDtos ¶
func GenerateModel ¶
func GenerateModelCode ¶
func GenerateModels ¶
func GenerateTool ¶
func GenerateToolCode ¶
func GenerateTools ¶
func GenerateTools() (err error)
func GenerateVO ¶
func GenerateVoCode ¶
func GenerateVos ¶
func GetGoType ¶
GetGoType 根据列的数据库类型返回对应的 Go 类型 支持可空类型自动转换为指针类型
参数:
- col: 列定义,包含数据库类型和是否可空等信息
返回:
- string: 对应的 Go 类型,如 "uint64", "*string", "time.Time" 等
示例:
- bigint unsigned + 非空 -> uint64
- varchar(128) + 可空 -> *string
- datetime + 非空 -> time.Time
func IsSnakeCaseStyle ¶
IsSnakeCaseStyle 判断列定义列表的整体命名风格是否为蛇形命名 用于模板中判断应该生成蛇形还是驼峰风格的 JSON tag 参数:
- columns: 列定义列表
返回:
- bool: true 表示蛇形命名风格,false 表示驼峰命名风格
示例:
- IsSnakeCaseStyle(columns) -> true (如果字段包含 user_id, created_at 等)
- IsSnakeCaseStyle(columns) -> false (如果字段包含 userId, createdAt 等)
func PoTemplatePath ¶
func PoTemplatePath() string
func ToCamelCase ¶
ToCamelCase 将字符串转换为 camelCase(小驼峰) 用于模板中生成参数名等需要小驼峰格式的场景
func ToJsonTag ¶
ToJsonTag 根据列定义列表的整体命名风格生成 JSON tag 用于模板中为带后缀的字段生成合适的 JSON tag 参数:
- fieldName: 当前字段名
- suffix: 后缀(如 "List", "Fuzzy", "Start", "End")
- columns: 列定义列表,用于判断整体命名风格
返回:
- string: 生成的 JSON tag
示例:
- ToJsonTag("user_id", "List", columns) -> "user_id_list" (蛇形风格)
- ToJsonTag("userId", "List", columns) -> "userIdList" (驼峰风格)
func ToPascalCase ¶
func ToSafeParamName ¶
ToSafeParamName 将字符串转换为安全的参数名(避免 Go 关键字冲突) 用于模板中生成函数参数名,如果是 Go 关键字则添加后缀
func ToolTemplateDir ¶
func ToolTemplateDir() string
func ToolTemplatePath ¶
func TrimPointer ¶
TrimPointer 去除类型前面的指针符号 * 专门用于模板中将指针类型转换为值类型 参数:
- s: 原始类型字符串(如 "*string", "*int64")
返回:
- string: 去除指针符号后的类型(如 "string", "int64")
示例:
- TrimPointer("*string") -> "string"
- TrimPointer("*int64") -> "int64"
- TrimPointer("string") -> "string" (如果没有指针符号,返回原值)
func TrimPrefix ¶
TrimPrefix 去除字符串的前缀 用于模板中去除类型前面的指针符号等 参数:
- s: 原始字符串
- prefix: 要去除的前缀
返回:
- string: 去除前缀后的字符串
示例:
- TrimPrefix("*string", "*") -> "string"
func VoTemplatePath ¶
func VoTemplatePath() string
Types ¶
Click to show internal directories.
Click to hide internal directories.