Opa, faltou o nome do atributo a ser modificado. :-)

2009/5/24 Rudá Porto Filgueiras <rud...@gmail.com>:
> 2009/5/22 rogeriocdluiz <rogeriocdl...@yahoo.com.br>:
>>
>>
>> Pessoal,
>>
>> Criei um um formulário para cadastro de informações que são gravadas em um
>> banco Mysql. Como minha área é infra-estrutura segui os seguintes tutoriais:
>>
>> http://plone.org/products/ploneformgen/documentation/tutorial/sql-crud/
>>
>> http://plone.org/documentation/tutorial/plone-and-mysql
>>
>> http://www.vivaolinux.com.br/artigo/Criando-formularios-no-Zope-Plone-utilizando-o-banco-de-dados-MySQL
>>
>> Funcionou perfeito. Criei o formulário e uma lista com os dados cadastrados.
>> No primeiro tutorial é mostrada uma opção de URL onde é mostrado o
>> formulário já com os dados preenchidos pra edição.
>>
>> Criei um page template para mostrar a lista dos dados assim:
>>
>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>>
>> <html xmlns="http://www.w3.org/1999/xhtml"; xml:lang="en"
>> lang="en"
>> metal:use-macro="here/main_template/macros/master"
>> i18n:domain="plone">
>>
>> <body>
>>
>> <div metal:fill-slot="main">
>>
>> <h1>Lista de Usuarios Cadastrados</h1>
>>
>> <table border>
>> <tr>
>> <th>Nome Completo</th>
>> <th>CPF</th>
>> <th>Senha</th>
>> <th>Habilitado</th>
>> <th>Comentario</th>
>> <th>Alterar</th>
>> </tr>
>>
>> <div tal:repeat="records context/SelectAll" >
>>
>> <tr>
>> <td><span tal:replace="records/fullname">cod goes here</span></td>
>> <td><span tal:replace="records/user">cod goes here</span></td>
>> <td><span tal:replace="records/password">cod goes here</span></td>
>> <td><span tal:replace="records/enabled">cod goes here</span></td>
>> <td><span tal:replace="records/comment">cod goes here</span></td>
>> </tr>
>>
>> </div>
>>
>> </table>
>>
>> </div>
>>
>> </body>
>> </html>
>>
>> XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
>>
>> Acontece que gostaria de ter mais uma coluna "Alterar" onde aparecesse a URL
>> do formulário já apontando para um registro específico. No caso a URL seria:
>>
>> {portal_url}/teste-formulario-cadastro/cadastro?uid=1
>>
>> Onde cada linha mostraria um registro e a sua respectiva URL.
>>
>> Como eu faço para substituir o uid dinamicamente com
>> tal:replace="records/password ?
>
> Você precisa usar o tal:attributes para fazer o atributo "href" ser
> gerado dinâmicamente, por exemplo:
>
<td>
  <a href="#"  tal:attributes="href
string:${portal_url}/teste-formulario-cadastro/cadastro?uid=${records/uid}">
    <span tal:replace="records/uid" />
  </a>
</td>

> Dá uma olhada na documentação do Zope PageTemplates que tem mais mais 
> exemplos:
>
> http://www.zope.org/Documentation/Books/ZopeBook/current/AppendixC.stx
>
> Sds,

--
Rudá Porto Filgueiras

Responder a