Web2py - Visão geral da estrutura

web2py é uma estrutura da web full-stack que pode ser usada por um desenvolvedor para desenvolver completamente um aplicativo da web. Inclui integração de banco de dados SQL e servidor web multi-threaded para projetar um programa.

Interface da Web para projetar um programa de usuário

Depois que o comando é executado de acordo com o sistema operacional, o web2py exibe uma janela de inicialização e, em seguida, exibe um widget GUI que pede ao usuário para escolher -

  • uma senha de administrador única,
  • o endereço IP da interface de rede a ser usado para o servidor web,
  • e um número de porta a partir do qual atender às solicitações.

O administrador inclui toda a autoridade para adicionar e editar qualquer novo aplicativo da web.

Por padrão, web2py executa seu servidor web em 127.0.0.1:8000 (porta 8000 no localhost), mas um usuário pode executá-lo em qualquer endereço IP e porta disponíveis de acordo com o requisito.

O widget da GUI web2py será exibido conforme mostrado abaixo.

A senha é usada na interface administrativa para qualquer alteração no novo módulo.

Depois que o usuário definir a senha de administração, web2py inicia o navegador da web na página com a seguinte URL - http://127.0.0.1:8000/

A página de boas-vindas do framework será exibida conforme mostrado abaixo.

Projetando um programa básico em web2py

Depois de iniciar o aplicativo web2py, com a URL mencionada acima, podemos usar a interface administrativa para criar um novo módulo, por exemplo, “helloWorld”.

A interface administrativa pedirá a senha para fins de autenticação, pois o administrador detém toda a autoridade para adicionar e editar qualquer novo aplicativo da web.

O instantâneo fornecido acima inclui os detalhes da página, que lista todos os aplicativos web2py instalados e permite que o administrador os gerencie. Por padrão, a estrutura web2py vem com três aplicativos. Eles são -

  • A admin aplicativo, que o usuário está implementando atualmente.

  • A examples aplicativo, com a documentação interativa online e uma instância do site oficial web2py.

  • UMA welcomeinscrição. Inclui o modelo básico para qualquer outro aplicativo web2py. Também é conhecido comoscaffolding application. O aplicativo também dá as boas-vindas ao usuário na inicialização.

Deixe o nome do novo aplicativo ser “helloWorld”.

Uma vez criada uma nova aplicação, o usuário é redirecionado para uma página composta por view, modelo e controladores da respectiva aplicação.

O usuário pode ver o aplicativo recém-criado mencionando o seguinte URL - http://127.0.0.1:8000/helloWorld

Por padrão, um usuário pode visualizar a tela a seguir ao acessar o URL mencionado acima.

Para imprimir a mensagem de determinado aplicativo da web “helloWorld”, a mudança é feita no default.py controlador.

A função chamada “index”é a função padrão para retornar o valor e exibir a saída necessária. Como mencionado acima, a string“Hello World- Welcome to my first web application” é usado como o valor de retorno, que exibe a saída na tela.

A saída é exibida da seguinte forma -

Postbacks

O mecanismo de validação da entrada de formulário é muito comum e não é considerado uma boa prática de programação. A entrada é validada a cada vez, o que é um fardo para a validação.

Um padrão melhor no web2py é enviar formulários para a mesma ação que os gera. Este mecanismo é chamado de“postback”que é a principal característica do web2py. Em suma, a auto-submissão é alcançada empostback.

def first():
   if request.vars.visitor_name: #if visitor name exists
      session.visitor_name = request.vars.visitor_name
      redirect(URL('second'))#postback is implemented
   return dict()

Aplicação CRUD

web2py inclui aplicativos que executam as funções de criar, recuperar, atualizar e excluir. oCRUD ciclo descreve as funções elementares de um banco de dados, que é persistente.

Toda a lógica da aplicação é escrita nos modelos, que são recuperados pelos controladores e exibidos aos usuários com a ajuda da visualização.

appadmin

Para PHP, o servidor de aplicativos inclui uma lista de todos os bancos de dados em phpmyadmin. De forma semelhante, web2py fornece uma interface para gerenciar, criar e excluir tabelas ou bancos de dados, que é denominado como“appadmin.”

Antes de implementar a lógica por trás das tabelas, é necessário criar o banco de dados e suas tabelas associadas.

O URL para acessar appadmin -

http://127.0.0.1:8000/applicationname/appadmin

Ao acessar a URL, o usuário obterá a lista de tabelas associadas para a aplicação dada.

Esta interface não se destina ao público. Ele é projetado para obter um acesso fácil ao banco de dados. Consiste em dois arquivos, a saber - um controlador“appadmin.py” e uma vista “appadmin.html”.

Ele pode paginar até 100 registros por vez. O uso de“appadmin” é discutido nos capítulos subsequentes.