mirror of https://github.com/Xhofe/alist
				
				
				
			fix: mysql FULLTEXT search (#2840)
							parent
							
								
									f777a2fab4
								
							
						
					
					
						commit
						143e4cd077
					
				|  | @ -13,14 +13,15 @@ var db *gorm.DB | |||
| 
 | ||||
| func Init(d *gorm.DB) { | ||||
| 	db = d | ||||
| 	var err error | ||||
| 	err := AutoMigrate(new(model.Storage), new(model.User), new(model.Meta), new(model.SettingItem), new(model.SearchNode)) | ||||
| 	switch conf.Conf.Database.Type { | ||||
| 	case "sqlite3": | ||||
| 		err = AutoMigrate(new(model.Storage), new(model.User), new(model.Meta), new(model.SettingItem), new(model.SearchNode)) | ||||
| 	case "mysql": | ||||
| 		err = AutoMigrate(new(model.Storage), new(model.User), new(model.Meta), new(model.SettingItem), new(model.SearchNodeMySQL)) | ||||
| 		if err == nil { | ||||
| 			tableName := fmt.Sprintf("%ssearch_nodes", conf.Conf.Database.TablePrefix) | ||||
| 			db.Exec(fmt.Sprintf("CREATE FULLTEXT INDEX idx_%s_name_fulltext ON %s(name);", tableName, tableName)) | ||||
| 		} | ||||
| 	case "postgres": | ||||
| 		err = AutoMigrate(new(model.Storage), new(model.User), new(model.Meta), new(model.SettingItem), new(model.SearchNode)) | ||||
| 		if err == nil { | ||||
| 			db.Exec("CREATE EXTENSION pg_trgm;") | ||||
| 			db.Exec("CREATE EXTENSION btree_gin;") | ||||
|  |  | |||
|  | @ -18,13 +18,6 @@ type SearchReq struct { | |||
| 	PageReq | ||||
| } | ||||
| 
 | ||||
| type SearchNodeMySQL struct { | ||||
| 	Parent string `json:"parent" gorm:"index"` | ||||
| 	Name   string `json:"name" gorm:"index:,class:FULLTEXT"` | ||||
| 	IsDir  bool   `json:"is_dir"` | ||||
| 	Size   int64  `json:"size"` | ||||
| } | ||||
| 
 | ||||
| type SearchNode struct { | ||||
| 	Parent string `json:"parent" gorm:"index"` | ||||
| 	Name   string `json:"name"` | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 BoYanZh
						BoYanZh