2011-10-05 46 views
2

我創建了一個具有NamedBlobFile作爲其中一個字段(用戶將上傳.pdf)的敏捷內容類型。我希望對該pdf有全文索引 - 就像ATFile類型一樣 - 但不知道要做到這一點,我必須做些什麼。將敏捷名稱dBlobFile的內容添加到SearchableText

我已經安裝collective.dexteritytextindexer並已經得到了一些做這個添加到搜索文本的其他領域:

searchable('paper_author') 
paper_author = schema.Text(title=_(u"Author"), required=False) 

我不知道該怎麼對文件做的領域。建議?

+0

我問上http://stackoverflow.com/questions/7470152/title-and-description-arent-indexed-with-collective-dexteritytextindexer類似的東西看到我的解決方案在那裏。 – gforcada

回答

0

我認爲使用searchable()指令也適用於NameBlobFiles。

有在collective.dexteritytextindexer轉換器以轉換文件內容爲文本的護理,使其可轉位(見the code at github),這也適用於斑點(因爲INamedBlobFileFieldINamedFileField爲其適配器註冊)。

如果它不能正常工作,請在collective.dexteritytextindexer issue tracker處創建問題。

如果問題是該字段是不是在你的代碼中定義的,你不能使用searchable指令,也有searchable功能(進口來自.utils!),它可以像這樣的架構範圍之外使用:

from plone.app.dexterity.behaviors.metadata import IBasic 
from collective.dexteritytextindexer.utils import searchable 

searchable(IBasic, 'title') 
searchable(IBasic, 'description')