私のカスタム器用さのタイプは次のようになります。
class IMyType(form.Schema):
title = schema.TextLine(
title=_(u"Title"),
)
address = schema.TextLine(
title=_(u"Address"),
required=False,
)
class MyType(dexterity.Container):
grok.implements(IMyType)
ライブ検索結果を次のように表示し、タイトルと、存在する場合は住所値の最初の3文字をリストします。
Item One
Address[:3]
Item Two
Address[:3]
デフォルトでは、一致した各アイテムにタイトルと説明が表示されます。したがって、1つの解決策は、アドレスフィールドから説明フィールドを計算することです。しかし、私は方法がわかりません。ヒントやより良い提案はありますか?
plone.indexerを使用して、特定のタイプの説明インデックスをオーバーライドできます。このようにして、カタログには適切な情報が含まれ、検索結果をカスタマイズする必要はありません。
from plone.indexer import indexer
@indexer(IMyType)
def custom_description(obj, **kw):
return obj.Description[:3]
登録
<adapter name="description" factory=".indexers.custom_description" />
pypihttps : //pypi.python.org/pypi/plone.indexerでplone.indexerのドキュメントを確認してください
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加