【发布时间】:2018-08-14 21:07:30
【问题描述】:
我目前使用的是 CKAN 2.6.6,并且我已经根据此处的文档创建了一些自定义排序顺序:Sorting by custom fields on the dataset search page 但是该文档没有向我们展示如何将默认排序顺序从“相关性”设置为其他自定义字段。我想知道如何在不修改 CKAN 内核的情况下做到这一点?
【问题讨论】:
我目前使用的是 CKAN 2.6.6,并且我已经根据此处的文档创建了一些自定义排序顺序:Sorting by custom fields on the dataset search page 但是该文档没有向我们展示如何将默认排序顺序从“相关性”设置为其他自定义字段。我想知道如何在不修改 CKAN 内核的情况下做到这一点?
【问题讨论】:
您可以在IPackageController interface中实现函数before_search,并添加您想要的sort参数。像这样:
# IPackageController
def before_search(self, search_params):
search_params.update({
'sort': search_params.get('sort', 'value desc')
})
return search_params
【讨论】:
search_params,这样一个键值对是{'sort': 'value desc'},然后我的默认排序顺序是value desc?
sort。我将示例代码放入上面的答案中。