如何搜索 ZCatalog 对象名称

发布于 2024-11-27 15:10:53 字数 179 浏览 1 评论 0原文

我想搜索对象名称。 如果我有这个结构: /de/myspace/media/justAnotherPdf.pdf

然后我想搜索名称“justAnotherPdf”来找到它或类似“justAnot”的内容 我已经为 pdf 文件建立了索引。

但我无法使用 TextIndexNG2 或 PathIndex 搜索它。

I want to Search for an Object name.
If i have this Structure:
/de/myspace/media/justAnotherPdf.pdf

Then i want to Search for the name "justAnotherPdf" to find it or something like "justAnot"
I have Indexed the pdf files.

But i cant search it with TextIndexNG2 or PathIndex.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

海未深 2024-12-04 15:10:53

目前不支持开箱即用。对象标识符 (getId) 仅作为字段值进行索引,因此只能作为整个字符串进行查找。

您需要向目录添加单独的索引以支持您的用例。您可以添加一个新的 TextIndexNG2 索引,其新名称仅索引 getId 方法。在 ZMI 中,找到 Portal_catalog,然后是“索引”选项卡,然后在右侧您将找到一个用于添加新索引的下拉菜单。选择一个容易记住的名称(例如“fullTextId”)并使用 getId 作为索引属性。

您需要重新索引,但仅限于该索引。添加后,在“索引”选项卡上选择它(勾选复选框),然后选择该页面底部的“重新索引”。现在,您可以通过通配符搜索在自定义搜索中使用此索引。

Currently this is not supported out-of-the-box. Object identifiers (getId) are only indexed as field values and thus can only be looked up as whole strings.

You'd need to add separate index to the catalog to support your use-case. You could add a new TextIndexNG2 index with a new name indexing just the getId method. In the ZMI, find the portal_catalog, then it's 'Indexes' tab, then on the right-hand-side you'll find a drop-down menu for adding a new index. Pick a memorable name ('fullTextId' for example) and use getId as the indexed attribute.

You'll need to do a reindex, but only for that index. Once added, select it in on the Indexes tab (tick the check-box) and select 'Reindex' at the bottom of that page. Now you can use this index in your custom searches with a wildcard search.

晚雾 2024-12-04 15:10:53
import os.path
name = os.path.splitext(os.path.split(url)[1])[0]

解释一下代码:

from os.path import split, splitext
url = '/de/myspace/media/justAnotherPdf.pdf'
path, name_with_ext = split(url)
name_without_ext, ext = splitext(name_with_ext)
import os.path
name = os.path.splitext(os.path.split(url)[1])[0]

explaining the code:

from os.path import split, splitext
url = '/de/myspace/media/justAnotherPdf.pdf'
path, name_with_ext = split(url)
name_without_ext, ext = splitext(name_with_ext)
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文