2

我正在尝试在 Alfresco webscript (javascript) 中编写一个 lucene 搜索,以在自定义类型 cm:folder 中查找 2 个自定义类型中的 1 个

所以文件夹可能有以下内容 1. 一些文本 (cm:content) 2. 更多文本 (custom:content) 3. 更多文本 (custom:content) 4. 另一个文件夹 (cm:folder) 5. 疯狂,更多文本 (custom:content2) 6. 最后文本 (custom:content2)

lucene 搜索的预期结果应该返回以下 2. 更多文本 (custom:content) 3. 更多文本 (custom:content) 5. 疯狂,更多文本 (custom:content2) 6. 最后文本 (custom:content2)

lucene 搜索哪里出错了?我写了一些类似的东西

+PATH:"/app:company_home/PATH_TO_A_CUSTOM_TYPE_FOLDER/*" TYPE:"custom:content1"  TYPE:"custom:content2"

问题是它返回所有内容,我认为目的是写类似

+PATH:"/app:company_home/PATH_TO_A_CUSTOM_TYPE_FOLDER/*" +TYPE:"custom:content1" OR +PATH:"/app:company_home/PATH_TO_A_CUSTOM_TYPE_FOLDER/*"+TYPE:"custom:content2"

更糟糕的情况是我可以运行 2 次 lucene 搜索,但最好知道查询是如何编写的 :-)

谢谢

4

1 回答 1

2

你不能只做以下事情:

+PATH:"/app:company_home/PATH_TO_A_CUSTOM_TYPE_FOLDER/*" AND (TYPE:"custom:content1" TYPE:"custom:content2")

因为如果你写 +PATH TYPE: TYPE:,它实际上是 PATH:(Must have) OR TYPE: OR TYPE:,因此看起来如果 PATH: 匹配,它将返回下面的所有内容。

于 2012-05-23T21:03:09.730 回答