maker

package
v0.4.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 19, 2024 License: AGPL-3.0 Imports: 15 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// SampleDir 样板代码文件夹
	SampleDir = filepath.Join(echo.Wd(), `application`, `cmd`, `maker`, `sample`)
	//HandlerDir handler保存文件夹
	HandlerDir = filepath.Join(echo.Wd(), `application`, `handler`, `backend`)
	//ModelDir model保存文件夹
	ModelDir = filepath.Join(echo.Wd(), `application`, `model`)
	//TemplateDir 模板保存文件夹
	TemplateDir = filepath.Join(echo.Wd(), `template`, `backend`)
	//DefaultCLIConfig 命令行参数
	DefaultCLIConfig = &CLIConfig{}
)

Functions

func Format

func Format(file string) error

func Make

func Make(c *CLIConfig) error

Make 生成代码

func MakeHandler

func MakeHandler(cfg *Config) error

MakeHandler 生成Handler

func MakeHandlerInit

func MakeHandlerInit(group string, data echo.H) error

MakeHandlerInit 生成Handler初始化逻辑

func MakeModel

func MakeModel(cfg *Config) error

MakeModel 生成模型

func MakeTemplate

func MakeTemplate(cfg *Config) error

MakeTemplate 生成模板

Types

type CLIConfig

type CLIConfig struct {
	Tables            string
	Group             string
	DBKey             string
	SwitchableFields  string
	MustHasPrimaryKey bool
}

type Config

type Config struct {
	Group string //组名称(请用全小写的英文字符) official/exmple
	H     HandlerConfig
	M     ModelConfig
	T     TemplateConfig
}

Config 配置

func NewConfig

func NewConfig() *Config

func (*Config) MakeInit

func (c *Config) MakeInit(r *Route) *Route

MakeInit 生成init代码

func (*Config) PkgName

func (c *Config) PkgName() string

PkgName Handler包名

type HandlerConfig

type HandlerConfig struct {
	Name string //Handler名称
}

HandlerConfig Handler配置

func (*HandlerConfig) FileName

func (h *HandlerConfig) FileName() string

FileName Handler文件名

func (*HandlerConfig) TmplName

func (h *HandlerConfig) TmplName(typ string) string

TmplName 模板名

type ModelConfig

type ModelConfig struct {
	Name        string //Model名称(首字母大写)
	Object      string //管理的目标对象名称(如:新闻、商品等)
	PkgName     string //Model包名称
	SchemaName  string //Schema名称(dbschema内的结构体名称)
	NameField   string //名称字段名(结构体)
	NameColumn  string //名称列名(数据库)
	IDField     string //ID字段名(结构体)
	IDFieldType string //ID字段数据类型(结构体)
	IDColumn    string //ID列名(数据库)

	Database         string   //数据库名称
	DBKey            string   //数据库标识
	SwitchableFields []string //可切换状态的字段(即类型为枚举值enum('Y','N')的字段)
	// contains filtered or unexported fields
}

ModelConfig Model配置

func (*ModelConfig) Fields

func (m *ModelConfig) Fields() []*factory.FieldInfo

Fields 字段信息

func (*ModelConfig) FileName

func (m *ModelConfig) FileName() string

FileName Model文件名

func (*ModelConfig) HasAnyColumn

func (m *ModelConfig) HasAnyColumn(columns ...string) bool

HasAnyColumn 包含任意一个列名

func (*ModelConfig) HasAnyColumns

func (m *ModelConfig) HasAnyColumns(columns []string) bool

HasAnyColumns 包含任意一个列名

func (*ModelConfig) HasAnyField

func (m *ModelConfig) HasAnyField(fields ...string) bool

HasAnyField 包含任意一个字段名

func (*ModelConfig) HasAnyFields

func (m *ModelConfig) HasAnyFields(fields []string) bool

HasAnyFields 包含任意一个字段名

type Route

type Route struct {
	NavList  *[]navigate.Item
	Routes   []string
	GRoutes  map[string][]string
	G2Routes map[string]map[string][]string
}

func NewRoute

func NewRoute() *Route

func (*Route) NavString

func (r *Route) NavString() string

func (*Route) String

func (r *Route) String() string

type TemplateConfig

type TemplateConfig struct {
	Name    string //模板名称
	Options echo.H //模板选项
}

TemplateConfig 模板配置

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL