我是CKAN的新手,模板帮手遇到了问题。特别是在我的情况下,我将必须在自己的模板帮助器中调用toolkit.get_action('group_list')
。但是,当我添加如下约束时:
results = toolkit.get_action('group_list')(data_dict={'sort': 'package_count desc',
'type': 'MyType',
'all_fields': True})
我得到的结果是一个空列表。如果我从data_dict
中删除了'sort'约束,则可以得到用'MyType'列出组的结果。我不知道是什么引起了这个问题,因为当我遵循ckan toolkit official examples时,它可以正常工作。但是,我能想到的是此自定义组可能具有其自己的架构,因此package_count不能用作排序键。由于没有错误消息,因此我无法作进一步的假设。
答案 0 :(得分:0)
我想出了自己的问题。我在问题中展示的实现是正确的。但是,数据库未正确填充。基本上,您必须为特定组填充一些软件包。如果每个组中没有软件包,则此函数将返回空查询结果。在@DRead的建议下,我研究了Content-Type
的源代码。如果您看一下这段代码:
Request.Form
如果您没有为组创建软件包,则_group_or_org_list()
会过滤掉所有组。