向用户添加共享权限时的AttributeError

时间:2015-07-03 06:41:00

标签: error-handling plone

当我为任何用户分配新的共享权限级别时,

enter image description here

我收到此错误

enter image description here

似乎任何文件夹或用户都会产生此错误。有些用户已经拥有共享权限,这意味着之前曾经使用过。我不确定从那时起到现在发生了什么改变了这一点。

你们之前有没有遇到过这个问题?

错误日志:

Traceback (innermost last):
  Module ZPublisher.Publish, line 115, in publish
  Module ZPublisher.mapply, line 88, in mapply
  Module ZPublisher.Publish, line 41, in call_object
  Module Products.CMFCore.FSPythonScript, line 108, in __call__
  Module Shared.DC.Scripts.Bindings, line 311, in __call__
  Module Shared.DC.Scripts.Bindings, line 348, in _bindAndExec
  Module Products.CMFCore.FSPythonScript, line 164, in _exec
  Module None, line 14, in folder_localrole_edit
   - <FSPythonScript at /intranet/folder_localrole_edit used for /intranet/service-areas/management-services>
   - Line 14
  Module <string>, line 4, in _facade
  Module Products.Hotfix_20070320, line 68, in _curried
  Module Products.CMFCore.MembershipTool, line 437, in setLocalRoles
  Module Products.Archetypes.CatalogMultiplex, line 70, in reindexObjectSecurity
  Module Products.ZCatalog.CatalogBrains, line 52, in _unrestrictedGetObject
  Module OFS.Traversable, line 187, in unrestrictedTraverse
   - __traceback_info__: (['mailer', 'formfolder.2009-03-22.3253705634', 'FormFolder', 'portal_factory'], 'one-melville-brand-update-2009-1')
  Module Products.Five.traversable, line 126, in __bobo_traverse__
AttributeError: one-melville-brand-update-2009-1

1 个答案:

答案 0 :(得分:2)

看来你的portal_catalog工具不一致。 这意味着您有目录条目(大脑),没有真正的内容(Archetype对象)。

您可以通过“清除并重建”目录来解决此问题。

  

http://localhost:8080/ $ {PATH_TO_PLONE} / portal_catalog / manage_catalogAdvanced - &gt;清除并重建。

此操作可能需要很长时间,具体取决于您拥有的内容。

简短说明您的案例中似乎发生了什么:

在更改特定对象上的本地角色后,Plone尝试重新索引对象本身和所有子对象上的安全相关门户目录索引。在重新索引子内容时,它会尝试获取一个不存在的对象的一些数据(遍历时为AttributeError)。

使用新目录,您可以避免此类错误。