Hi Zopists,
I try to create ISNGFolder class which is subclassed from Zope Folder
class. During instantiation of this ISNGFolder class I also try to set
permissions ['View', 'Access contents information'] for role 'Content'
by calling manage_role('Content', ['View', 'Access contents
information']) function of this object. But some error occurs and I
don't know python API very well for folderish objects. Can somebody help
me, please??

I use Zope 2.1.6 on Linux Debian

Below you can see part of my python product for folderish object and
error output of Zope.

Begin of code:

manage_addISNGFolderForm=HTMLFile('addFolder', globals())

def manage_addISNGFolder(self, cz_id, title='', key_words=[], header='', footer='',
    """Add a new 'ISNG Folder' object with id *id*."""
    id = cz_id2id(cz_id)
    ob.id = id
    ob.cz_id = cz_id
    ob.title = title
    ob.creation = DateTime.DateTime(time.time())
    ob.author = author
    ob.modifier = author
    ob.key_words = key_words
    ob.header = header
    ob.footer = footer
    self._setObject(id, ob)
    ob.manage_role('Content', ['Access contents information', 'View'])
    if REQUEST is not None:    
        return MessageDialog(
            title = 'Add ISNGFolder',
            message = 'New ISNGFolder %s was added.' % ob.getProperty('cz_id'),
            action = './addFolder'

class ISNGFolder(Folder):
    """ISNGFolder class.

    Is created by inheritance from Folder Zope object."""

    meta_type = 'ISNG Folder'

    __ac_permissions__ = (
        ('View', ('manage_infoISNGForm',)),

    _properties = (
        {'id':'title', 'type':'string', 'mode':'w'},
        {'id':'cz_id', 'type':'string', 'mode':'w'},
        {'id':'author', 'type':'string', 'mode':'w'},
        {'id':'modifier', 'type':'string', 'mode':'w'},
        {'id':'key_words', 'type':'lines', 'mode':'w'},
        {'id':'header', 'type':'text', 'mode':'w'},
        {'id':'footer', 'type':'text', 'mode':'w'}

    _ManageOptions = (
        {'label':'Edit ISNG', 'action':'manage_editISNGForm'},
        {'label':'Info ISNG', 'action':'manage_infoISNGForm'},
        {'label':'Header ISNG', 'action':'manage_editHeaderISNGForm'},
        {'label':'Footer ISNG', 'action':'manage_editFooterISNGForm'},
        {'label':'Permissions ISNG', 'action':'manage_permissionsFrameISNGForm'},

Error output of Zope:

          Zope Error

          Zope has encountered an error while publishing this resource. 

          Error Type: AttributeError
          Error Value: aq_acquire

          Troubleshooting Suggestions

              The URL may be incorrect. 
              The parameters passed to this resource may be incorrect. 
              A resource that this resource relies on may be encountering an error. 

          For more detailed information about the error, please refer to the HTML 
source for this page. 

          If the error persists please contact the site maintainer. Thank you for your 

Traceback (innermost last):
  File /usr/local/www/Zope-2.1.6/lib/python/ZPublisher/Publish.py, line 214, in 
  File /usr/local/www/Zope-2.1.6/lib/python/ZPublisher/Publish.py, line 179, in publish
  File /usr/local/www/Zope-2.1.6/lib/python/Zope/__init__.py, line 202, in 
  File /usr/local/www/Zope-2.1.6/lib/python/ZPublisher/Publish.py, line 165, in publish
  File /usr/local/www/Zope-2.1.6/lib/python/ZPublisher/mapply.py, line 160, in mapply
    (Object: manage_addISNGFolder)
  File /usr/local/www/Zope-2.1.6/lib/python/ZPublisher/Publish.py, line 102, in 
    (Object: manage_addISNGFolder)
  File /usr/local/www/Zope-2.1.6/lib/python/Products/ISNG/ISNG.py, line 810, in 
  File /usr/local/www/Zope-2.1.6/lib/python/AccessControl/Role.py, line 179, in 
    (Object: ElementWithAttributes)
  File /usr/local/www/Zope-2.1.6/lib/python/AccessControl/Role.py, line 137, in 
    (Object: ElementWithAttributes)
  File /usr/local/www/Zope-2.1.6/lib/python/OFS/ObjectManager.py, line 173, in 
    (Object: ElementWithAttributes)
AttributeError: (see above)

Petr Knápek
NEXTRA Czech Republic, s.r.o., Hlinky 114, 603 00 Brno, Czech Republic
e-mail: mailto:[EMAIL PROTECTED]
tel:+420-5-43 554 150
FAX:+420-5-43 554 214

"Perl is worse than Python because people wanted it worse."
Larry Wall, 14 Oct 1998

Zope maillist  -  [EMAIL PROTECTED]
**   No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope-dev )

Reply via email to