2011-04-12 74 views
1

我使用Rich Text字段 - 「正文」創建了敏捷內容類型。我想爲我的Plone 4.0.2製作「正文」全文搜索。如何使RichTextValue目錄全文搜索Plone 4

我在主題中添加的catalog.xml,下面的代碼

我從ZMI /門/ portal_catalog「body_text RichTextValue對象。(錯誤消息,您是不是要找.RAW或.output?)「

如何更改catalog.xml以使用.output,我試過,但它不起作用。

謝謝。

+0

catalog.xml?完全追溯? – 2011-04-12 04:39:37

回答

1

聲明:我自己沒有遇到這個問題,所以這只是一個猜測。

原型和其他人使用SearchableText()索引/訪問器來填充Plone搜索的全文搜索索引。

您可能需要將SearchableText()方法添加到您的內容類型中,並使其返回所有要連接的文本,以便進行全文搜索。

+0

自定義索引器(請參閱Christoph的建議)比使用自定義類和自定義方法更好。 – optilude 2011-04-13 00:01:17

7

你可以使用plone.indexer,並提供你的靈巧型內自己的索引到您的自定義正文添加到SearchableText指數(包括默認標題和描述例),像這樣:一個

@indexer(IMyTypeInterface) 
def SearchableText(obj): 
    return ' '.join([obj.Title(), obj.Description(), obj.bodytext.output]) 
+1

obj.bodytext.output的問題是,它返回值的HTML版本。它應該首先轉換爲文本/純文本。我不確定什麼是正確進行轉換的最佳方式。 – 2013-03-15 14:46:05