【发布时间】:2016-05-26 12:09:08
【问题描述】:
不幸的是,我们的存储库中到处都有一个名为 "_archive" 的特殊文件夹。 这个文件夹有它的用途。但是:在搜索内容/文档时,我们希望排除它以及 "_archive" 下的所有内容。
所以,我想要从所有用户搜索中排除路径及其成员。 fts 的语法很简单:
your_query AND -PATH:"//cm:_archive//*"
测试: https://www.docdroid.net/RmKj9gB/search-test.pdf.html 获取 pdf,将其放入您的仓库两次:
- /some_random_path/search-test.pdf
- /some_random_path/_archive/search-test.pdf
在节点浏览器中,一切都按预期工作:
TEXT:"HODOR" AND -PATH:"//cm:_archive//*"
= 1 result
TEXT:"HODOR"
= 2 results
所以,我的想法是编辑 search.get.config.xml 并将排除项添加到属性列表中:
<search>
<default-operator>AND</default-operator>
<default-query-template>%(cm:name cm:title cm:description ia:whatEvent
ia:descriptionEvent lnk:title lnk:description TEXT TAG) AND -PATH:"//cm:_archive//*"
</default-query-template>
</search>
但它没有按预期工作!只要我在搜索字段中使用“文本:”或“名称:”,排除似乎就会被忽略。
我还有什么其他选择?基本上只是想在使用默认查询模板后将排除添加到基本查询。
版本是 Alfresco Community 5.0.d
谢谢!
【问题讨论】:
-
我在使用 PATH 查询时总是遇到性能问题,你不是吗?你的回购有多大?
-
wiki 说搜索会变慢,您可能希望增加缓存大小。但我还没有问题。我在具有 5gb 内容的开发环境中运行它
标签: search alfresco alfresco-share alfresco-webscripts