Уникальные идентификаторы портала_каталога как для архетипов, так и для содержания ловкости

Я запрашиваю portal_catalog для заполнения словаря кортежами (UID, Title). На сайте есть контент как по архетипам, так и по ловкости.

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'),

Как лучше всего использовать уникальные идентификаторы для контента Archetypes и Dexterity в portal_catalog в качестве ключа идентификатора контента для поиска?


person Mikko Ohtamaa    schedule 23.12.2011    source источник
comment
Я считаю, что 29550a9a-5e6c-4593-8bee-9db11f29b934 является допустимым uuid; однако иметь несколько объектов с одной и той же идеей, очевидно, неправильно...   -  person vangheem    schedule 23.12.2011
comment
Не могли бы вы предоставить конфигурацию для ваших типов Dexterity и ваших версий Plone и Dexterity?   -  person optilude    schedule 23.12.2011


Ответы (1)


Вероятно, он получает UID из контейнера предметов Ловкости.

Начиная с Ловкости 1.1, все предметы Ловкости должны получить свой собственный UUID, пока присутствует plone.uuid, что всегда должно иметь место в Plone 4.1 и выше. Убедитесь, что вы выполнили шаг обновления, чтобы добавить UUID к существующим элементам, у которых их нет.

person David Glick    schedule 23.12.2011
comment
Является ли шаг обновления чем-то еще помимо (пере)установки Ловкости как 1.1? - person Mikko Ohtamaa; 24.12.2011
comment
В порядке. Переустановка Ловкости 1.1 - должно быть что-то еще недокументированное - person Mikko Ohtamaa; 25.12.2011
comment
Ручной запуск portal_setup -> upgrades -> plone.app.dexterity -> показать старые обновления — добавление отсутствующих UUID в содержимое Dexterity (4 → 5), кажется, помогает - person Mikko Ohtamaa; 25.12.2011
comment
Шаг обновления должен был запускаться с помощью кнопки на панели управления надстройками, как обычно. - person David Glick; 25.12.2011