mirror of
https://github.com/pommee/goaway.git
synced 2026-01-11 08:31:00 -06:00
fix: correct behavior of unique constraint on blacklists table
This commit is contained in:
@@ -620,7 +620,7 @@ func (b *Blacklist) GetListStatistics(listname string) (string, SourceStats, err
|
||||
var result SourceWithCount
|
||||
err := b.DBManager.Conn.Table("sources s").
|
||||
Select("s.name, s.url, s.last_updated, s.active, COALESCE(bc.blocked_count, 0) as blocked_count").
|
||||
Joins("LEFT JOIN (SELECT source_id, COUNT(*) as blocked_count FROM blacklist GROUP BY source_id) bc ON s.id = bc.source_id").
|
||||
Joins("LEFT JOIN (SELECT source_id, COUNT(*) as blocked_count FROM blacklists GROUP BY source_id) bc ON s.id = bc.source_id").
|
||||
Where("s.name = ?", listname).
|
||||
First(&result).Error
|
||||
|
||||
@@ -756,8 +756,8 @@ func (b *Blacklist) AddSource(name, url string) error {
|
||||
|
||||
if err := b.DBManager.Conn.Clauses(
|
||||
clause.OnConflict{
|
||||
Columns: []clause.Column{{Name: "name"}, {Name: "url"}},
|
||||
DoNothing: true,
|
||||
Columns: []clause.Column{{Name: "url"}},
|
||||
DoUpdates: clause.AssignmentColumns([]string{"name", "last_updated", "active"}),
|
||||
},
|
||||
).Create(&database.Source{
|
||||
Name: name,
|
||||
|
||||
Reference in New Issue
Block a user