Compare commits

..

2 Commits

Author SHA1 Message Date
fancl 72b0de9c26 fix match method 2024-12-31 15:46:32 +08:00
fancl 68bdabddee fix bug 2024-12-13 09:50:13 +08:00
2 changed files with 36 additions and 3 deletions

View File

@ -1 +1,31 @@
# 数据库组件
组件提供了操作`mysql`一些相关的内容,通过组件可以方便的实现怎删改查的接口
## 插件
### 主键插件
主键插件是指的是用于生成数据库主键的插件非自增长的ID主键插件使用方式
```go
db.Use(&identified.Identify{})
```
### 数据校验插件
数据校验插件用户增改的时候对数据格式进行校验,使用方式
```go
db.Use(validate.New())
```
### 分表插件
分表插件提供了自动分表的功能,使用方式
```go
db.Use(sharding.New())
```

View File

@ -312,6 +312,7 @@ func fieldAttribute(field *schema.Field) types.Attribute {
attr.Live.Columns = strings.Split(kv[1], ",")
}
}
attr.Match = types.MatchExactly
}
dropdown := field.Tag.Get("dropdown")
@ -379,6 +380,7 @@ func fieldAttribute(field *schema.Field) types.Attribute {
}
attr.Values = append(attr.Values, fv)
}
attr.Match = types.MatchExactly
}
if !field.Creatable {
attr.Disable = append(attr.Disable, types.ScenarioCreate)
@ -636,9 +638,10 @@ func ModelTypes(ctx context.Context, db *gorm.DB, model any, domainName, labelCo
tx := db.WithContext(ctx)
result := make([]map[string]any, 0, 10)
if domainName == "" {
domainName = defaultDomain
}
tx.Model(model).Select(labelColumn, valueColumn).Scan(&result)
} else {
tx.Model(model).Select(labelColumn, valueColumn).Where("domain=?", domainName).Scan(&result)
}
values = make([]*types.TypeValue, 0, len(result))
for _, pairs := range result {
feed := &types.TypeValue{}