Skip to content. | Skip to navigation

Personal tools

Navigation

You are here: Home / Tips / Index Metadata

Index Metadata

Catalog

以 Plone5 Event Item 的 Subject 欄位值為例,使用 Tuple 型別 String 元素格式儲存,但 subject 使用 Tuple 型別 Unicode 元素格式儲存。

>>> my-event-item.Title()
'\xe7\x8e\x8b\xe7\x88\xba\xe4\xb8\xad\xe6\x96\x87'
>>> my-event-item.title
u'\u738b\u723a\u4e2d\u6587'

>>> my-event-item.Subject()
('\xe7\x8e\x8b\xe7\x88\xba', 'WangYe')
>>> my-event-item.subject
(u'\u738b\u723a', u'WangYe')

>>> p_catalog = app.mysite.portal_catalog
>>> p_catalog.indexes()
['total_comments', 'Title', ... 'Subject']
>>> p_catalog.values()
[<PLexicon at /mysite/portal_catalog/htmltext_lexicon>,
 <PLexicon at /mysite/portal_catalog/plaintext_lexicon>,
 <PLexicon at /mysite/portal_catalog/plone_lexicon>]

Subject 採 Keyword 索引方式,顯示方式可參考 plone.app.layout/viewlets/keywords.pt 程式碼。

以 Plone4 Event Item (Archetypes) 的 Location 欄位為例,使用 String 型別儲存,但 Plone5 (Dexterity) 使用 Unicode 型別儲存。

# Plone4 Archetypes
>>> my-event-item.getLocation()
'\xe5\x8f\xb0\xe5\x8d\x97\xe5\xb8\x82'

# Plone5 Dexterity
>>> my-event-item.location
u'\u53f0\u5317\u5e02\u5357\u6e2f\u5340'