CURD 优化

1. `Delete`删除方法, 新增: `Unscoped()`, 已经有删除时间了, 不需要更新编辑时间, 新建时间,编辑时间, 删除时间独立
2. `List`列表方法, JOSN 字段搜索问题处理
3. 模版新增 `in.In` 参数, 在模版中使用`in`参数,如: 插件目录名称
This commit is contained in:
tak
2024-09-16 12:05:22 +08:00
parent 52263c608f
commit 01f194d7ef
3 changed files with 4 additions and 3 deletions

View File

@@ -403,6 +403,7 @@ func (l *gCurd) loadView(ctx context.Context, in *CurdPreviewInput) (err error)
"importWebApi": in.options.ImportWebApi, // 导入webApi
"apiPrefix": in.options.ApiPrefix, // api前缀
"componentPrefix": componentPrefix, // vue子组件前缀
"in": in.In, // 在模版中使用`in`参数,如:插件目录名称
})
in.view = view

View File

@@ -287,7 +287,7 @@ func (l *gCurd) generateLogicListWhereEach(buffer *bytes.Buffer, in *CurdPreview
whereTag = "\tif " + linkMode + " {\n\t\tmod = mod." + wherePrefix + "NotLike(" + tablePrefix + "dao." + daoName + ".Columns()." + columnName + ", in." + field.GoName + ")\n\t}"
case WhereModeJsonContains:
val := tablePrefix + "fmt.Sprintf(`JSON_CONTAINS(%s,'%v')`, dao." + daoName + ".Columns()." + columnName + ", in." + field.GoName + ")"
whereTag = "\tif in." + field.GoName + linkMode + " {\n\t\tmod = mod." + wherePrefix + "(" + val + ")\n\t}"
whereTag = "\tif " + linkMode + " {\n\t\tmod = mod." + wherePrefix + "(" + val + ")\n\t}"
default:
buffer.WriteString(fmt.Sprintf(LogicWhereNoSupport, field.QueryWhere))