Desenvolvimento Web com Python, SQLObject e PSE - Parte 3

Por Willian Fernandes em 20/02/2008 na categoria desenvolvimento, internet, python, web

Continuando com a série sobre desenvolvimento web[bb] com Python[bb], vou mostrar agora como deixar as coisa mais interessante com includes e formulários.

Includes

É muito comum utilizar arquivos separados que estarão em várias partes da aplicação. Por exemplo, podemos ter um arquivo para o cabeçalho HTML[bb], um outro para o menu e um terceiro para o rodapé do HTML[bb].

Mas antes de criarmos nossos arquivos de include, teremos que configurar o PSE para apontar para nosso diretório de includes. Para isso abra o arquivo pse.conf (no Linux este arquivo fica em /etc/pse/pse.conf). Procure pela linha

;IncludePath = /app/servlet/path,/other/servlet/path

E troque por:

IncludePath = /var/www/includes,.

Caso você não esteja usando Linux[bb] (eu uso o Ubuntu[bb]) configure para o diretório que o Apache aponta. Isso muda de sistema para sistema.
Dentro deste diretório crie um sub-diretório chamado includes e dentro deste sub-diretório vamos colocar os arquivos abaixo:

cabecalho.pt

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="pt-BR">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <title>Biblioteca ABC</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <meta name="language" content="pt-br" />
</head>
<body>
    <div id="geral">
        <div id="topo">
            <h1>Biblioteca ABC</h1>
        </div>
        <div id="menu">
            <ul>
                <li class="primeiro"><a href="home.pt">Home</a></li>
                <li><a href="categorias_list.pt">Categorias</a></li>
                <li><a href="livros_list.pt">Livros</a></li>
                <li><a href="clientes_list.pt">Clientes</a></li>
                <li class="ultimo"><a href="sair.pt">Sair</a></li>
            </ul>
        </div>

rodape.pt

1
2
3
4
5
6
        <address class="rodape">
            &copy; Biblioteca ABC
        </address>
    </div>
</body>
</html>

Ok, os arquivos estão criados!
Agora vamos criar o arquivo principal do nosso sistema. Este arquivo terá um formulário de login, porém ele fará include do cabeçalho e do rodapé.
Salve o arquivo abaixo na raiz de onde ficará a sua aplicação, ou seja, em um diretório acima do sub-diretório includes.

index.pt

1
2
3
4
5
6
7
8
9
10
<?= pse.include("cabecalho.pt") ?>
<form id="frm-login" method="post" action="">
    <fieldset>
        <legend>Logar no Sistema</legend>
        <label>E-mail: <input type="text" id="email" name="email" /></label>
        <label>Senha: <input type="password" id="senha" name="senha" /></label>
        <input type="submit" id="entrar" name="entrar" value="Entrar" class="botao" />
    </fieldset>
</form>
<?= pse.include("rodape.pt") ?>

Perceberam o quanto é simples?
Toda página PSE possui um objeto chamado pse que contém vários métodos e objetos e no exemplo acima utilizamos o método include. Mais para frente mostrarei outras funcionalidades do objeto pse.

O método include recebe como parâmetro o nome do arquivo que iremos incluir. O PSE procura este arquivo nos diretórios que configuramos no arquivo pse.conf.

Para não prolongar muito, explicarei como trabalhar com formulários utilizando PSE no próximo post.

Prometo não demorar muito para postar o próximo post da série e aproveito para pedir o feedback de vocês em relação à esta série.

Comentários

1# Igor Escobar disse em 20/02/2008 às 23:15:36

Legal Willian!
Parabens!

2# Inside disse em 21/02/2008 às 13:20:20

Muito bom, aguardando os próximos…

[]’s

3# Sergio de Andrade disse em 26/02/2008 às 14:05:29

William, você merce !! PARABÉNS E MUITA BOA SORTE !

Que a Luz sempre te acompanhe.

abs

4# Rafael Marin disse em 08/03/2008 às 07:48:15

Cara, agora sim eu tô me interessando mesmo em aprender Python.
Com PSE parece ser tão mais fácil.

5# Carlos Henrique disse em 27/03/2008 às 11:19:44

Olá Willian, estou gostando muito da aula, mas tenho uma duvida.

por exemplo de eu estiver desenvolvendo 2 aplicações diferentes e preciso deixar todos os arquivos separados inclusive os includes.
Como eu faço para especificar na configuração do pse?

6# Diego Felix disse em 30/03/2008 às 10:36:11

Olá William..
Parabéns pelo Tutorial..

Cara, estou tendo dificuldades em instalar e configurar o mod_phyton.
Pesquisei a respeito mas não achei nada de concreto, poderia postar um tutorial ensinando a instalar e configura-lo?

[]’s

7# Willian Fernandes disse em 31/03/2008 às 12:43:54

Carlos Henrique:
Dentro do pse.conf basta colocar outro caminho separado por vírgula. Por exemplo:
IncludePath = /var/www/projeto1/includes,/var/www/projeto2/includes,.

Mas deve-se tomar cuidado na hora de nomear os arquivos. Se você tiver um arquivo chamado cabecalho.pt dentro do diretório includes de cada projeto o PSE utilizará o primeiro que ele encontrar, ou seja, o do projeto1. Por isso eu costumo colocar o nome do projeto como prefixo dos arquivos de include:
projeto1_cabecalho.pt
projeto2_cabecalho.pt

Infelizmente foi a única maneira que encontrei para trabalhar com vários projetos utilizando PSE.

===================================

Diego Felix:

Qual o Sistema Operacional que você está utilizando? Infelizmente ainda não consegui fazer o PSE funcionar no Windows…

8# Diego Felix disse em 01/04/2008 às 15:27:56

Então, utilizo Windows,
Porém estou tendo dificuldades em instalar o mod_python, framework qualquer coisa eu utilizo outro e tento seguir mais ou menos, isso se houver a possibilidade.
Se puder me ajudar eu já agradeço.
Fiz a solicitação do Ubuntu há um tempo, quando chegar creio que ficará mais fácil, mas por enquanto quero treinar no Windows, isso se conseguir instalar.

Abraços.

9# Baduel disse em 18/04/2008 às 13:54:58

To na espera da continuidade da série em…….

Deixe Um Comentátio

*Campos obrigatórios