mirror of
https://github.com/zeromicro/go-zero.git
synced 2026-05-07 23:20:00 +08:00
Generate caches that support custom key prefix. (#4643)
This commit is contained in:
@@ -50,6 +50,8 @@ var (
|
||||
VarBoolStrict bool
|
||||
// VarStringSliceIgnoreColumns represents the columns which are ignored.
|
||||
VarStringSliceIgnoreColumns []string
|
||||
// VarStringCachePrefix describes the prefix of cache.
|
||||
VarStringCachePrefix string
|
||||
)
|
||||
|
||||
var errNotMatched = errors.New("sql not matched")
|
||||
@@ -57,6 +59,9 @@ var errNotMatched = errors.New("sql not matched")
|
||||
// MysqlDDL generates model code from ddl
|
||||
func MysqlDDL(_ *cobra.Command, _ []string) error {
|
||||
migrationnotes.BeforeCommands(VarStringDir, VarStringStyle)
|
||||
if VarBoolCache && len(VarStringCachePrefix) == 0 {
|
||||
return errors.New("cache prefix is empty")
|
||||
}
|
||||
src := VarStringSrc
|
||||
dir := VarStringDir
|
||||
cache := VarBoolCache
|
||||
@@ -89,6 +94,7 @@ func MysqlDDL(_ *cobra.Command, _ []string) error {
|
||||
database: database,
|
||||
strict: VarBoolStrict,
|
||||
ignoreColumns: mergeColumns(VarStringSliceIgnoreColumns),
|
||||
prefix: VarStringCachePrefix,
|
||||
}
|
||||
return fromDDL(arg)
|
||||
}
|
||||
@@ -96,6 +102,9 @@ func MysqlDDL(_ *cobra.Command, _ []string) error {
|
||||
// MySqlDataSource generates model code from datasource
|
||||
func MySqlDataSource(_ *cobra.Command, _ []string) error {
|
||||
migrationnotes.BeforeCommands(VarStringDir, VarStringStyle)
|
||||
if VarBoolCache && len(VarStringCachePrefix) == 0 {
|
||||
return errors.New("cache prefix is empty")
|
||||
}
|
||||
url := strings.TrimSpace(VarStringURL)
|
||||
dir := strings.TrimSpace(VarStringDir)
|
||||
cache := VarBoolCache
|
||||
@@ -130,6 +139,7 @@ func MySqlDataSource(_ *cobra.Command, _ []string) error {
|
||||
idea: idea,
|
||||
strict: VarBoolStrict,
|
||||
ignoreColumns: mergeColumns(VarStringSliceIgnoreColumns),
|
||||
prefix: VarStringCachePrefix,
|
||||
}
|
||||
return fromMysqlDataSource(arg)
|
||||
}
|
||||
@@ -225,6 +235,7 @@ type ddlArg struct {
|
||||
database string
|
||||
strict bool
|
||||
ignoreColumns []string
|
||||
prefix string
|
||||
}
|
||||
|
||||
func fromDDL(arg ddlArg) error {
|
||||
@@ -243,7 +254,7 @@ func fromDDL(arg ddlArg) error {
|
||||
return errNotMatched
|
||||
}
|
||||
|
||||
generator, err := gen.NewDefaultGenerator(arg.dir, arg.cfg,
|
||||
generator, err := gen.NewDefaultGenerator(arg.prefix, arg.dir, arg.cfg,
|
||||
gen.WithConsoleOption(log), gen.WithIgnoreColumns(arg.ignoreColumns))
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -266,6 +277,7 @@ type dataSourceArg struct {
|
||||
cache, idea bool
|
||||
strict bool
|
||||
ignoreColumns []string
|
||||
prefix string
|
||||
}
|
||||
|
||||
func fromMysqlDataSource(arg dataSourceArg) error {
|
||||
@@ -318,7 +330,7 @@ func fromMysqlDataSource(arg dataSourceArg) error {
|
||||
return errors.New("no tables matched")
|
||||
}
|
||||
|
||||
generator, err := gen.NewDefaultGenerator(arg.dir, arg.cfg,
|
||||
generator, err := gen.NewDefaultGenerator(arg.prefix, arg.dir, arg.cfg,
|
||||
gen.WithConsoleOption(log), gen.WithIgnoreColumns(arg.ignoreColumns))
|
||||
if err != nil {
|
||||
return err
|
||||
@@ -369,7 +381,7 @@ func fromPostgreSqlDataSource(url string, pattern pattern, dir, schema string, c
|
||||
return errors.New("no tables matched")
|
||||
}
|
||||
|
||||
generator, err := gen.NewDefaultGenerator(dir, cfg, gen.WithConsoleOption(log), gen.WithPostgreSql(), gen.WithIgnoreColumns(ignoreColumns))
|
||||
generator, err := gen.NewDefaultGenerator("", dir, cfg, gen.WithConsoleOption(log), gen.WithPostgreSql(), gen.WithIgnoreColumns(ignoreColumns))
|
||||
if err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user