mirror of
https://github.com/go-gitea/gitea
synced 2025-07-03 09:07:19 +00:00
Add user settings key/value DB table (#16834)
This commit is contained in:
@ -357,6 +357,8 @@ var migrations = []Migration{
|
||||
NewMigration("Add table app_state", addTableAppState),
|
||||
// v201 -> v202
|
||||
NewMigration("Drop table remote_version (if exists)", dropTableRemoteVersion),
|
||||
// v202 -> v203
|
||||
NewMigration("Create key/value table for user settings", createUserSettingsTable),
|
||||
}
|
||||
|
||||
// GetCurrentDBVersion returns the current db version
|
||||
|
25
models/migrations/v202.go
Normal file
25
models/migrations/v202.go
Normal file
@ -0,0 +1,25 @@
|
||||
// Copyright 2021 The Gitea Authors. All rights reserved.
|
||||
// Use of this source code is governed by a MIT-style
|
||||
// license that can be found in the LICENSE file.
|
||||
|
||||
package migrations
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
|
||||
"xorm.io/xorm"
|
||||
)
|
||||
|
||||
func createUserSettingsTable(x *xorm.Engine) error {
|
||||
type UserSetting struct {
|
||||
ID int64 `xorm:"pk autoincr"`
|
||||
UserID int64 `xorm:"index unique(key_userid)"` // to load all of someone's settings
|
||||
SettingKey string `xorm:"varchar(255) index unique(key_userid)"` // ensure key is always lowercase
|
||||
SettingValue string `xorm:"text"`
|
||||
}
|
||||
if err := x.Sync2(new(UserSetting)); err != nil {
|
||||
return fmt.Errorf("sync2: %v", err)
|
||||
}
|
||||
return nil
|
||||
|
||||
}
|
Reference in New Issue
Block a user