Opa.. obrigado Zénrique...

bom, eu fiz por um jeito q não sei se pode dar algum problema depois..

#no script
codigo = request.get('codigo')

for lista in context.querys.selClientesEdit(codigo=codigo):
   return context.editaClientes(userpass=lista.userpass,codigo=lista.codigo,tariff=lista.tariff)

#no zpt.

<input tal:attributes="value options/userpass" id="userpass" name="userpass" type="text" value="" />
<input tal:attributes="value options/codigo" id="codigo" name="codigo" type="text" value="" />
<input tal:attributes="value options/tariff" id="tariff" name="tariff" type="text" value="" />
</form>


isso resolveria meu problema, mas não sei em questões de segurança, ou de organização oq isso afetaria..

abraços. Obrigado mais uma vez galera.



2006/8/3, José Henrique <[EMAIL PROTECTED]>:
Se seu zsql retornar apenas um registro, o mais fácil é convertê-lo em dicionário, utilizando o método dictionaries().  Exemplo:

<div tal:define="cliente python: context.selecionaCliente(codigo=request.codigo ).dictionaries()[0]">
    <span tal:replace="cliente/CODIGO" />
    <span tal:replace="cliente/NOME" />
    <span tal:replace="cliente/ENDERECO" />
</div>

Na verdade, o método retorna uma lista de dicionários e por isso é necessário utilizar o indice 0 (mesmo que a lista tenha apenas um item).

Se zsql retornar vários registros, é só iterar o resultado.  Exemplo:

<div tal:repeat="cliente python: context.selecionaCliente(codigo=request.codigo)>
    <span tal:replace="cliente/CODIGO" />
    <span tal:replace="cliente/NOME" />
    <span tal:replace="cliente/ENDERECO" />
</div>

Não deixe de ler o capítulo sobre Banco de Dados Relacionais do Zope Book para obter mais informações: http://www.plope.com/Books/2_7Edition/RelationalDatabases.stx

Zénrique.

2006/8/3, Carlos Augusto Pacheco <[EMAIL PROTECTED] >:
Pessoal, me deparei com um problema.

Estou passando uma variavel para um script Python  (scriptClientes?codigo=001) e neste script python ele tem que rodar um zsqlMethod que consulta os dados do cliente 001 e retornar ele para um context.editaClientes para que ele abra um FORM de edição.

estou chamando no script o meu sqlMethod assim..
codigo=request.get('codigo')
context.selecionaCliente(codigo)

como q pego o resultado e retorno os campos (codigo,nome,endereco) existentes na tabela.

obrigado.




__._,_.___

Para enviar uma mensagem: zope-pt@yahoogrupos.com.br
Para desistir envie uma mensagem em branco para: [EMAIL PROTECTED]




Yahoo! Grupos, um serviço oferecido por:
PUBLICIDADE


Links do Yahoo! Grupos

__,_._,___

Responder a