Я изменил имя атрибута (поля) архетипа, и теперь я получаю ошибки разрешения. Что я могу сделать? - PullRequest
2 голосов
/ 29 июля 2011

Я назвал атрибут (поле) в типе содержимого «строка» вместо «компания».

Я установил свой продукт и, увидев эту ошибку, изменил ее в своем классе типов контента, переустановил продукт, запустил обновление настроек безопасности и обновил каталог. Но я продолжаю получать:

Module Products.CMFPlone.utils, line 392, in _createObjectByType
Module Products.CMFCore.TypesTool, line 290, in _finishConstruction
Module Products.CMFCore.CMFCatalogAware, line 148, in notifyWorkflowCreated
Module Products.CMFCore.WorkflowTool, line 291, in notifyCreated
Module Products.DCWorkflow.DCWorkflow, line 346, in notifyCreated
Module Products.DCWorkflow.DCWorkflow, line 430, in _changeStateOf
Module Products.DCWorkflow.DCWorkflow, line 529, in _executeTransition
Module Products.DCWorkflow.DCWorkflow, line 389, in updateRoleMappingsFor
Module Products.DCWorkflow.utils, line 64, in modifyRolesForPermission
Module AccessControl.Permission, line 92, in setRoles
AttributeError: string

Как удалить этот строковый атрибут, который сохраняется где-то в ny ZODB, поскольку я уже удалил его из моего типа контента? Я переустановил продукт, перезапустил свой экземпляр, но у меня все та же проблема. Идеи? Я могу удалить свой Data.fs, так как это машина для разработки, но если бы это произошло на производственном сайте, это было бы невозможно.

PS: Когда я бежал bin/instance fg:

2011-07-28 19:01:59 WARNING Init Class mynamespace.mypackage.content.mycontent.MyContent has a security declaration for nonexistent method 'string'

1 Ответ

2 голосов
/ 29 июля 2011

Я нашел проблему.Я изменился в своем классе контента, но не изменился в моем интерфейсе типов контента.

paster создает # -*- schema definition goes here -*- на interfaces.py.Я сделал grep string в своем каталоге товаров и нашел его.

...