Importante:

O ZODB é um banco de dados transacional e se você não "commitar" a
transação, ela será revertida.

Para commitar uma transação:

import transaction
transaction.commit()

[],

2010/1/26 Luciano Pacheco <lucm...@gmail.com>

> Não entendi direito o que vc quer fazer, mas algo parecido com o que você
> disse e eu já usei é:
>
> Fazer um script e rodar no Zope da seguinte forma:
>
> bin/instance run path/script.py
>
> Para aprender a usar a API do Zope/Plone recomendo você levantar o servidor
> em debug e "conversar" com seu Zope, os mesmos comandos que você usa no modo
> debug poderá user usado no script.py.
>
> bin/instance debug
>
> http://wiki.zope.org/zope2/HowToBecomeManagerInDebugger
> http://wiki.zope.org/zope2/HowToFakeREQUESTInDebugger
>
> Quando cair no prompt:
>
> Import algumas coisas:
>
> from AccessControl.SecurityManagement import newSecurityManagerfrom 
> AccessControl.SecurityManager import setSecurityPolicyfrom 
> Testing.makerequest import makerequestfrom 
> Products.CMFCore.tests.base.security import PermissiveSecurityPolicy, 
> AnonymousUser, OmnipotentUser
>
> # autenticando como admin
>
> newSecurityManager(app, context.acl_users.getUser('admin'))
>
> # fazer um request fake, pq várias coisas precisam do request para funcionar
>
> app=makerequest(app)
>
>
>
> Eu uso esse tipo de script para criar conteúdos em massa no Zope/Plone, por
> exemplo em migrações de conteúdo.
>
>
> Até mais,
>
> 2010/1/26 Tony Morais <tonyl...@gmail.com>
>
>
>>
>> Salve a todos,
>> Tenho o seguinte questionamento: acabei de fazer um script dentro do zmi,
>> pelo que entendi esse script vira um objeto e é armazenado no zodb. como é
>> que eu faço para ativar esse script de um outro script que não esteja no
>> zmi?
>>
>> Tony Morais
>> Estudante de Ciências da Computação
>>
>>
>> 
>
>
>
>
> --
> Luciano Pacheco
> blog.lucmult.com.br
>



-- 
Luciano Pacheco
blog.lucmult.com.br

Responder a