| | package model
|
| |
|
| |
|
| | func GetMissingModels() ([]string, error) {
|
| |
|
| | models := GetEnabledModels()
|
| | if len(models) == 0 {
|
| | return []string{}, nil
|
| | }
|
| |
|
| |
|
| | var existing []string
|
| | if err := DB.Model(&Model{}).Where("model_name IN ?", models).Pluck("model_name", &existing).Error; err != nil {
|
| | return nil, err
|
| | }
|
| |
|
| | existingSet := make(map[string]struct{}, len(existing))
|
| | for _, e := range existing {
|
| | existingSet[e] = struct{}{}
|
| | }
|
| |
|
| |
|
| | var missing []string
|
| | for _, name := range models {
|
| | if _, ok := existingSet[name]; !ok {
|
| | missing = append(missing, name)
|
| | }
|
| | }
|
| | return missing, nil
|
| | }
|
| |
|