Use natural sort for related tags (#6128)

This commit is contained in:
WithoutPants 2025-10-13 13:13:45 +11:00 committed by GitHub
parent 72c9c436be
commit d3f6301101
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -76,7 +76,7 @@ var (
}, },
fkColumn: imagesTagsJoinTable.Col(tagIDColumn), fkColumn: imagesTagsJoinTable.Col(tagIDColumn),
foreignTable: tagTableMgr, foreignTable: tagTableMgr,
orderBy: goqu.COALESCE(tagTableMgr.table.Col("sort_name"), tagTableMgr.table.Col("name")).Asc(), orderBy: tagTableSort,
} }
imagesPerformersTableMgr = &joinTable{ imagesPerformersTableMgr = &joinTable{
@ -116,7 +116,7 @@ var (
}, },
fkColumn: galleriesTagsJoinTable.Col(tagIDColumn), fkColumn: galleriesTagsJoinTable.Col(tagIDColumn),
foreignTable: tagTableMgr, foreignTable: tagTableMgr,
orderBy: goqu.COALESCE(tagTableMgr.table.Col("sort_name"), tagTableMgr.table.Col("name")).Asc(), orderBy: tagTableSort,
} }
galleriesPerformersTableMgr = &joinTable{ galleriesPerformersTableMgr = &joinTable{
@ -174,7 +174,7 @@ var (
}, },
fkColumn: scenesTagsJoinTable.Col(tagIDColumn), fkColumn: scenesTagsJoinTable.Col(tagIDColumn),
foreignTable: tagTableMgr, foreignTable: tagTableMgr,
orderBy: goqu.COALESCE(tagTableMgr.table.Col("sort_name"), tagTableMgr.table.Col("name")).Asc(), orderBy: tagTableSort,
} }
scenesPerformersTableMgr = &joinTable{ scenesPerformersTableMgr = &joinTable{
@ -282,7 +282,7 @@ var (
}, },
fkColumn: performersTagsJoinTable.Col(tagIDColumn), fkColumn: performersTagsJoinTable.Col(tagIDColumn),
foreignTable: tagTableMgr, foreignTable: tagTableMgr,
orderBy: goqu.COALESCE(tagTableMgr.table.Col("sort_name"), tagTableMgr.table.Col("name")).Asc(), orderBy: tagTableSort,
} }
performersStashIDsTableMgr = &stashIDTable{ performersStashIDsTableMgr = &stashIDTable{
@ -314,7 +314,7 @@ var (
}, },
fkColumn: studiosTagsJoinTable.Col(tagIDColumn), fkColumn: studiosTagsJoinTable.Col(tagIDColumn),
foreignTable: tagTableMgr, foreignTable: tagTableMgr,
orderBy: goqu.COALESCE(tagTableMgr.table.Col("sort_name"), tagTableMgr.table.Col("name")).Asc(), orderBy: tagTableSort,
} }
studiosStashIDsTableMgr = &stashIDTable{ studiosStashIDsTableMgr = &stashIDTable{
@ -331,6 +331,9 @@ var (
idColumn: goqu.T(tagTable).Col(idColumn), idColumn: goqu.T(tagTable).Col(idColumn),
} }
// formerly: goqu.COALESCE(tagTableMgr.table.Col("sort_name"), tagTableMgr.table.Col("name")).Asc()
tagTableSort = goqu.L("COALESCE(tags.sort_name, tags.name) COLLATE NATURAL_CI").Asc()
tagsAliasesTableMgr = &stringTable{ tagsAliasesTableMgr = &stringTable{
table: table{ table: table{
table: tagsAliasesJoinTable, table: tagsAliasesJoinTable,
@ -346,7 +349,7 @@ var (
}, },
fkColumn: tagRelationsJoinTable.Col(tagParentIDColumn), fkColumn: tagRelationsJoinTable.Col(tagParentIDColumn),
foreignTable: tagTableMgr, foreignTable: tagTableMgr,
orderBy: goqu.COALESCE(tagTableMgr.table.Col("sort_name"), tagTableMgr.table.Col("name")).Asc(), orderBy: tagTableSort,
} }
tagsChildTagsTableMgr = *tagsParentTagsTableMgr.invert() tagsChildTagsTableMgr = *tagsParentTagsTableMgr.invert()
@ -373,7 +376,7 @@ var (
}, },
fkColumn: groupsTagsJoinTable.Col(tagIDColumn), fkColumn: groupsTagsJoinTable.Col(tagIDColumn),
foreignTable: tagTableMgr, foreignTable: tagTableMgr,
orderBy: goqu.COALESCE(tagTableMgr.table.Col("sort_name"), tagTableMgr.table.Col("name")).Asc(), orderBy: tagTableSort,
} }
groupRelationshipTableMgr = &table{ groupRelationshipTableMgr = &table{