2011-12-23 42 views
3

我在查詢portal_catalog以使用(UID,標題)元組填充詞彙表。該網站包含原型和敏捷內容。portal_catalog原型和敏捷內容的唯一標識

brains = portal_catalog.searchResults(path={ "query": site_physical_path + "/" + folder_name }, 
       portal_type=["foobar.app.courseinfo", "Folder"]) 

看起來像敏捷內容不給予適當的UID,事實上所有的敏捷項目有相同的UID(它甚至不是一個無效的值)。

('29550a9a-5e6c-4593-8bee-9db11f29b934', u'xxx dexterity'), ('29550a9a-5e6c-4593-8bee-9db11f29b934', u'yyy dexterity'), 

什麼是具有跨兩個原型和portal_catalog敏捷內容的唯一ID用作查找,能內容ID鍵的最佳策略是什麼?

+0

我相信29550a9a-5e6c-4593-8bee-9db11f29b934是一個有效的uuid;然而,具有相同想法的多個對象顯然是不正確的...... – vangheem 2011-12-23 19:07:08

+0

您能否爲您的敏捷類型以及您的Plone和敏捷版本提供配置? – optilude 2011-12-23 19:16:48

回答

5

它可能從敏捷物品的容器中獲取UID。

從敏捷1.1開始,只要有plone.uuid存在,所有敏捷項目都應該有自己的UUID,這在Plone 4.1及更高版本中應該始終如此。確保您運行升級步驟以將UUID添加到沒有它們的現有項目。

+0

升級步驟除了(重新)安裝靈巧1.1? – 2011-12-24 12:30:47

+0

好的。重新安裝靈巧1.1 - 必須有其他東西沒有記錄參與 – 2011-12-25 11:14:43

+0

手動運行portal_setup - >升級 - > plone.app.dexterity - >顯示舊的升級 - 添加缺少的UUID到敏捷內容(4→5)似乎在伎倆 – 2011-12-25 11:18:17

相關問題