猿问

mgo 中的 Golang Bson 排序参数

我正在尝试将多重排序查询传递给 mgo 包的“排序”参数(请参阅https://godoc.org/labix.org/v2/mgo#Query.Sort)。


如果参数是动态的(当前保存在切片中),我如何将其转换为有效的排序字符串。


一个工作示例是:


db.C(Collection).Find(Query).Limit(limit).Sort("-created_when", "-title").Iter()

但是如果“-created_when”和“-title”保存在一个切片中,我尝试使用切片连接,如:


sortBy := []string{"-created_when", "title"}

db.C(Collection).Find(Query).Limit(limit).Sort(strings.Join(sortBy, ",")).Iter()

查询无法正常工作。


如何将切片中的任意字段转换为所需的 .Sort([string1], [string2], ...) 格式?


翻过高山走不出你
浏览 229回答 1
1回答

慕标5832272

像这样:db.C(Collection).Find(Query).Limit(limit).Sort(sortBy...).Iter()
随时随地看视频慕课网APP

相关分类

Go
我要回答