gen icon indicating copy to clipboard operation
gen copied to clipboard

如何设置让不同前缀的表名生成到不同的目录

Open zsy619 opened this issue 2 years ago • 6 comments

Your Question

不同表名前缀生成到不同的目录

The document you expected this should be explained

数据库有s3_开头与sso_开头的表名, 如何配置让s3_开头的表名生成到queryS3、modelS3目录下 让sso_开头的表名生成到querySso、modelSso目录下

Expected answer

zsy619 avatar Aug 04 '22 02:08 zsy619

这种需求只能多次生成了,一次生成不能分开目录放文件

tr1v3r avatar Aug 04 '22 06:08 tr1v3r

能否过滤表名?

zsy619 avatar Aug 09 '22 01:08 zsy619

具体指什么?没有理解

tr1v3r avatar Aug 09 '22 02:08 tr1v3r

GenerateAllTable,这个方法,可以设置一个prefix前缀,只有表名称包含这个前缀的才生成model及query 这样就可以解决本问题

zsy619 avatar Aug 13 '22 00:08 zsy619

那不还是一次生成一个目录,并不能一次生成到不同的目录

tr1v3r avatar Aug 13 '22 04:08 tr1v3r

@zsy619 gen config有一个配置,应该可以满足你的需求,需要忽略的表返回空就行,如:

conf.WithTableNameStrategy(func(tableName string) (targetTableName string) {
		if strings.HasPrefix(tableName, "t_") { //忽略t_开头的表
			return ""
		}
		return tableName
	})
``

> GenerateAllTable,这个方法,可以设置一个prefix前缀,只有表名称包含这个前缀的才生成model及query 这样就可以解决本问题

qqxhb avatar Aug 30 '22 06:08 qqxhb