2
0
mirror of https://github.com/acepanel/panel.git synced 2026-02-04 12:40:25 +08:00

fix: 创建数据库用户时如果赋予权限的数据库不存在时显示异常,close #785

This commit is contained in:
2025-05-31 17:23:47 +08:00
parent c597e6b99c
commit f245ff06c5
5 changed files with 121 additions and 87 deletions

View File

@@ -78,6 +78,9 @@ func (r databaseUserRepo) Create(req *request.DatabaseUserCreate) error {
return err
}
for name := range slices.Values(req.Privileges) {
if err = mysql.DatabaseCreate(name); err != nil {
return err
}
if err = mysql.PrivilegesGrant(req.Username, name, req.Host); err != nil {
return err
}
@@ -99,6 +102,9 @@ func (r databaseUserRepo) Create(req *request.DatabaseUserCreate) error {
return err
}
for name := range slices.Values(req.Privileges) {
if err = postgres.DatabaseCreate(name); err != nil {
return err
}
if err = postgres.PrivilegesGrant(req.Username, name); err != nil {
return err
}
@@ -145,6 +151,9 @@ func (r databaseUserRepo) Update(req *request.DatabaseUserUpdate) error {
}
}
for name := range slices.Values(req.Privileges) {
if err = mysql.DatabaseCreate(name); err != nil {
return err
}
if err = mysql.PrivilegesGrant(user.Username, name, user.Host); err != nil {
return err
}
@@ -163,6 +172,9 @@ func (r databaseUserRepo) Update(req *request.DatabaseUserUpdate) error {
}
}
for name := range slices.Values(req.Privileges) {
if err = postgres.DatabaseCreate(name); err != nil {
return err
}
if err = postgres.PrivilegesGrant(user.Username, name); err != nil {
return err
}