Files
bamort/backend/character/database.go
T

22 lines
420 B
Go
Raw Normal View History

package character
2024-12-21 07:26:27 +01:00
import (
"bamort/database"
2025-07-28 21:35:29 +02:00
"bamort/models"
2024-12-24 22:36:03 +01:00
2024-12-24 07:54:27 +01:00
"fmt"
2024-12-21 07:26:27 +01:00
"gorm.io/gorm"
)
2025-07-28 21:35:29 +02:00
func SaveCharacterToDB(character *models.Char) error {
2024-12-24 07:54:27 +01:00
// Use GORM transaction to ensure atomicity
return database.DB.Transaction(func(tx *gorm.DB) error {
2024-12-24 07:54:27 +01:00
// Save the main character record
2024-12-21 22:06:33 +01:00
if err := tx.Create(character).Error; err != nil {
2024-12-24 07:54:27 +01:00
return fmt.Errorf("failed to save character: %w", err)
2024-12-21 22:06:33 +01:00
}
return nil
})
}