Hmm... why do you "import Zope" -- do you want to manipulate the ZODB from outside of Zope? On Fri, 12 Apr 2002, Noel Duffy wrote:
I am trying to make a copy of an object in my ZODB using manage_copyObjects and manage_pasteObjects. I have code like this:
import Zope app=Zope.app() x=app.manage_copyObjects([app['getad'].id]) app.manage_pasteObjects(x)
This raises an exception, like so:
Traceback (innermost last): File "test.py", line 9, in ? app.manage_pasteObjects(x) File "lib\python\OFS\CopySupport.py", line 203, in manage_pasteObjects self._verifyObjectPaste(ob) File "lib\python\OFS\CopySupport.py", line 393, in _verifyObjectPaste if getSecurityManager().validate(None, parent, None, meth): File "/MC2\lib\python\AccessControl\SecurityManager.py", line 139, in validate
self._context) File "/MC2\lib\python\AccessControl\ZopeSecurityPolicy.py", line 211, in valid ate raise 'Unauthorized', ( Unauthorized: You are not authorized to access <em>methodAdd</em>.
However, I cannot see how to have my script authenticate itself to the ZODB so I can do the copy/paste. Can anyone tell me what I need to do here? Do I need to use Zope.AccessControl.SecurityManagement.newSecurityManager somehow?
I'm using Zope 2.2.4, which for reasons too long to go into here I cannot change.
Thanks in advance,
Noel.