phoenix/backend/links.go
2023-04-06 10:37:48 +05:00

49 lines
895 B
Go

package backend
import (
"gorm.io/gorm"
)
type Link struct {
ID uint64 `gorm:"primaryKey"`
Name string `gorm:"notNull"`
Href string `gorm:"notNull"`
GroupID uint64 `gorm:"notNull"`
}
func CreateLink(db *gorm.DB, linkName string, href string, groupID uint64) (Link, error) {
link := Link{
Name: linkName,
Href: href,
GroupID: groupID,
}
result := db.Create(&link)
if result.Error != nil {
return Link{}, result.Error
}
return link, nil
}
func UpdateLink(db *gorm.DB, id uint64, linkName string, href string) (Link, error) {
var link Link
db.First(&link, id)
link.Name = linkName
link.Href = href
result := db.Save(&link)
if result.Error != nil {
return Link{}, result.Error
}
return link, nil
}
func DeleteLink(db *gorm.DB, id uint64) error {
result := db.Delete(&Link{}, id)
if result.Error != nil {
return result.Error
}
return nil
}