【问题标题】:Lucene search to find either of 2 particular content model types within a folderLucene 搜索以在文件夹中查找 2 种特定内容模型类型中的任何一种
【发布时间】:2012-05-22 16:32:53
【问题描述】:

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

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

lucene 搜索的预期结果应该返回如下 2.更多文字(自定义:内容) 3. 更多文字(自定义:内容) 5. 疯狂的,更多的文字(自定义:content2) 6.最后一个文本(自定义: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 搜索,但最好知道查询是如何编写的 :-)

谢谢

【问题讨论】:

    标签: javascript lucene alfresco web-scripting


    【解决方案1】:

    你不能只做以下事情:

    +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: 匹配,它将返回下面的所有内容。

    【讨论】:

    • 你能举一个我试过的具体例子吗+PATH:"/app:company_home/xy:folderABC/*" AND (TYPE:"xy:{companyXY.com/model/content/1.0}folder")。在我的例子中,我检查了在内容模型中使用了 xy:folder 类型。
    猜你喜欢
    • 2012-08-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-28
    • 2019-10-16
    • 2013-01-02
    • 2012-09-21
    相关资源
    最近更新 更多