Geração de lista de registros de banco com URL dinâmica

5 messages Options
Embed this post
Permalink
rogeriocdluiz

Geração de lista de registros de banco com URL dinâmica

Reply Threaded More More options
Print post
Permalink
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 ?

Alguém sabe?

Obrigado!

Rudá Porto Filgueiras

Re: Geração de lista de registros de banco com URL dinâmica

Reply Threaded More More options
Print post
Permalink
2009/5/22 rogeriocdluiz <[hidden email]>:

>
>
> 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="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
Rudá Porto Filgueiras

Re: Geração de lista de registros de banco com URL dinâmica

Reply Threaded More More options
Print post
Permalink
Opa, faltou o nome do atributo a ser modificado. :-)

2009/5/24 Rudá Porto Filgueiras <[hidden email]>:

> 2009/5/22 rogeriocdluiz <[hidden email]>:
>>
>>
>> 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
rogeriocdluiz

Re: Geração de lista de registros de banco com URL dinâmica

Reply Threaded More More options
Print post
Permalink
--- Em [hidden email], Rudá Porto Filgueiras <rudazz@...> escreveu
>
> Opa, faltou o nome do atributo a ser modificado. :-)
>
> 2009/5/24 Rudá Porto Filgueiras <rudazz@...>:

Valeu mesmo vou testar. Só não entendi a segunda resposta, o nome do atributo já não esta definido no seu exemplo?

Valeu!

rogeriocdluiz

Re: Geração de lista de registros de banco com URL dinâmica

Reply Threaded More More options
Print post
Permalink
In reply to this post by Rudá Porto Filgueiras
--- Em [hidden email], Rudá Porto Filgueiras <rudazz@...> escreveu

>
> <td>
>   <a href="#"  tal:attributes="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
>


Beleza cara funcionou!
Obrigado!