我正在尝试将多重排序查询传递给mgo包的“Sort”参数(请参见https://godoc.org/labix.org/v2/mgo#Query.Sort)。
如果参数是动态的(目前保存在一个切片中),那么我该如何将其转换为有效的排序字符串。
以下是一个可用的示例:
db.C(Collection).Find(Query).Limit(limit).Sort("-created_when", "-title").Iter()
但是如果“-created_when”和“-title”被存储在一个slice中,而我尝试使用slice join时:
sortBy := []string{"-created_when", "title"}
db.C(Collection).Find(Query).Limit(limit).Sort(strings.Join(sortBy, ",")).Iter()
查询不正确。
我该如何将切片中的任意字段翻译成.Sort([string1], [string2], ...)所需的格式?