Edgard, muito grato por compartilhar com todos esta receita. Esta é
uma ótima forma de ajudar: resumir para todo mundo o que aprendemos.
2008/4/4 Edgard Costa [EMAIL PROTECTED]:
Depois de algumas dezenas de mensagens trocadas e muita ajuda do
ZéHenrique, consegui fazer meu formulário no Zope rodar perfeitamente.
Como muitos novos usuários podem ter o mesmo problema, vou postar a
solução:
1º E mais importante. Não siga o que está no Livro do Zope, na página
do Zope. Não funciona. (eu pelo menos não consegui)
Edgard, você poderia enviar a URL exata da página onde está a
documentação que não funciona? Por ser documentação oficial, é
importante que ela seja corrigida, pois certamente outras pessoas vão
seguir as instruções erradas.
2º O pulo do gato é:
Na tag form, precisamente em action direcionar para o script python
desta forma:
form name=frm id=frm action=seuscriptpython method=post
Aqui não vejo qualquer surpresa: é assim que formulários funcionam em
qualquer sistema de programação para Web, incluindo o Zope. O atributo
action do form deve ser a URL do programa que trata os dados do
formulário, ou seja, a URL para onde o navegador do usuário deve
enviar os dados. No seu exemplo, seuscriptpython é o caminho
relativo até o script. O navegador sabe como montar a URL completa a
partir do caminho relativo.
3º A sintaxe para os inputs types é:
input type=text name=nomedocampo tal:attributes=value
request/nomedocampo | nothing /br/
Perfeito. A função do comando tal:attributes aqui é preencher os
campos do formulário com os dados do request, ou deixá-los em branco
caso não existam tais dados no request (a parte do ...|nothing).
Isto serve para que os valores dos campos sejam preservados caso este
formulário precise ser re-exibido pelo script (por exemplo, se houver
algum erro de validação).
[ ]s
Luciano