Enable foreign keys for sqlite
This commit is contained in:
parent
c48ede175a
commit
0618b70110
|
@ -103,6 +103,11 @@ func ConfigureDatabase(config *gorm.Config) (*gorm.DB, error) {
|
|||
return nil, err
|
||||
}
|
||||
|
||||
// Manually enable foreign keys for sqlite, as this isn't done by default
|
||||
if drivers.DatabaseDriver() == drivers.DatabaseDriverSqlite {
|
||||
db.Exec("PRAGMA foreign_keys = ON")
|
||||
}
|
||||
|
||||
return db, nil
|
||||
}
|
||||
|
||||
|
|
|
@ -108,11 +108,11 @@ func deleteOldUserAlbums(db *gorm.DB, scannedAlbums []*models.Album, user *model
|
|||
|
||||
// Delete old albums from database
|
||||
err := db.Transaction(func(tx *gorm.DB) error {
|
||||
if err := tx.Where("album_id IN ?", deleteAlbumIDs).Delete(&models.UserAlbums{}).Error; err != nil {
|
||||
if err := tx.Where("album_id IN (?)", deleteAlbumIDs).Delete(&models.UserAlbums{}).Error; err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
if err := tx.Where("id IN ?", deleteAlbumIDs).Delete(models.Album{}).Error; err != nil {
|
||||
if err := tx.Where("id IN (?)", deleteAlbumIDs).Delete(models.Album{}).Error; err != nil {
|
||||
return err
|
||||
}
|
||||
|
||||
|
|
|
@ -63,6 +63,8 @@ func TestCleanupMedia(t *testing.T) {
|
|||
return
|
||||
}
|
||||
|
||||
t.Run("Modify albums", func(t *testing.T) {
|
||||
|
||||
test_utils.RunScannerOnUser(t, db, user1)
|
||||
assert.Equal(t, 9, countAllMedia())
|
||||
assert.Equal(t, 18, countAllMediaURLs())
|
||||
|
@ -78,4 +80,9 @@ func TestCleanupMedia(t *testing.T) {
|
|||
test_utils.RunScannerAll(t, db)
|
||||
assert.Equal(t, 3, countAllMedia())
|
||||
assert.Equal(t, 6, countAllMediaURLs())
|
||||
})
|
||||
|
||||
// t.Run("Modify images", func(t *testing.T) {
|
||||
|
||||
// })
|
||||
}
|
||||
|
|
|
@ -66,13 +66,13 @@ func (v EnvironmentVariable) GetBool() bool {
|
|||
|
||||
// ShouldServeUI whether or not the "serve ui" option is enabled
|
||||
func ShouldServeUI() bool {
|
||||
return EnvServeUI.GetValue() == "1"
|
||||
return EnvServeUI.GetBool()
|
||||
}
|
||||
|
||||
// DevelopmentMode describes whether or not the server is running in development mode,
|
||||
// and should thus print debug informations and enable other features related to developing.
|
||||
func DevelopmentMode() bool {
|
||||
return EnvDevelopmentMode.GetValue() == "1"
|
||||
return EnvDevelopmentMode.GetBool()
|
||||
}
|
||||
|
||||
// UIPath returns the value from where the static UI files are located if SERVE_UI=1
|
||||
|
|
Loading…
Reference in New Issue