Web2py - Introdução
web2pyé definido como uma estrutura da web de código aberto para desenvolvimento ágil que envolve aplicativos da web orientados por banco de dados; é escrito em Python e programável em Python. É uma estrutura de pilha completa; consiste em todos os componentes necessários que um desenvolvedor precisa para construir um aplicativo da web totalmente funcional.
web2py quadro segue o Model-View-Controller padrão de execução de aplicativos da web, ao contrário dos padrões tradicionais.
Modelé uma parte do aplicativo que inclui lógica para os dados. Os objetos no modelo são usados para recuperar e armazenar os dados do banco de dados.
Viewé uma parte do aplicativo, o que ajuda a renderizar a exibição de dados aos usuários finais. A exibição de dados é obtida do modelo.
Controllerfaz parte do aplicativo, que lida com a interação do usuário. Os controladores podem ler dados de uma visualização, controlar a entrada do usuário e enviar dados de entrada para o modelo específico.
web2pytem um recurso embutido para gerenciar cookies e sessões. Depois de confirmar uma transação (em termos de SQL), a sessão também é armazenada simultaneamente.
web2pytem a capacidade de executar as tarefas em intervalos programados após a conclusão de determinadas ações. Isso pode ser alcançado comCRON.
web2py - Fluxo de Trabalho
Dê uma olhada no diagrama de fluxo de trabalho fornecido abaixo.
O diagrama de fluxo de trabalho é descrito abaixo.
o Models, Views e Controller componentes constituem o aplicativo web2py do usuário.
Vários aplicativos podem ser hospedados na mesma instância do web2py.
O navegador envia a solicitação HTTP para o servidor e o servidor interage com Model, Controller e View para buscar a saída necessária.
As setas representam a comunicação com o (s) mecanismo (s) de banco de dados. As consultas de banco de dados podem ser escritas em SQL bruto ou usando o web2py Database Abstraction Layer (que será discutido nos próximos capítulos), de modo queweb2py o código do aplicativo é independente de qualquer mecanismo de banco de dados.
Model estabelece a conexão do banco de dados com o banco de dados e interage com o Controller. oController por outro lado interage com o View para renderizar a exibição de dados.
o Dispatchermapeia a URL solicitada conforme fornecida na resposta HTTP a uma chamada de função no controlador. A saída da função pode ser uma string ou uma tabela hash.
Os dados são renderizados pelo View. Se o usuário solicitar uma página HTML (o padrão), os dados serão processados em uma página HTML. Se o usuário solicitar a mesma página em XML, web2py tenta encontrar uma visualização que possa renderizar o dicionário em XML.
Os protocolos suportados de web2py incluem HTML, XML, JSON, RSS, CSV e RTF.
Model-View-Controller
o model-view-controller representação de web2py é a seguinte -
Modelo
"db.py" is the model:
db = DAL('sqlite://storage.sqlite')
db.define_table(employee, Field('name'), Field(‘phone’))
o Modelinclui a lógica dos dados do aplicativo. Ele se conecta ao banco de dados conforme mencionado na figura acima. Considere que o SQLite está sendo usado e está armazenado emstorage.sqlitearquivo com uma tabela definida como funcionário. Se a tabela não existir, o web2py ajuda criando a respectiva tabela.
Controlador
O programa "default.py" é o Controller.
def employees():
grid = SQLFORM.grid(db.contact, user_signature = False)
return locals()
Dentro web2py, O mapeamento de URL ajuda a acessar as funções e módulos. Para o exemplo acima, o Controlador contém uma única função (ou "ação") chamada funcionários.
A ação realizada pelo Controller retorna uma string ou um dicionário Python, que é uma combinação de chave e valor incluindo um conjunto local de variáveis.
Visão
"default/contacts.html" é o View.
{{extend 'layout.html'}}
<h1>Manage My Employees</h1>
{{=grid}}
Para o exemplo dado, View exibe a saída após a função do controlador associado ser executada.
O propósito disto Viewé renderizar as variáveis no dicionário, que está na forma de HTML. oView arquivo é escrito em HTML, mas incorpora código Python com a ajuda de {{ and }} delimitadores.
O código embutido em HTML consiste em código Python no dicionário.
Comece com web2py
web2py vem em pacotes binários para todos os principais sistemas operacionais como Windows, UNIX e Mac OS X.
É fácil instalar o web2py porque -
É composto pelo interpretador Python, então você não precisa tê-lo pré-instalado. Também existe uma versão do código-fonte que roda em todos os sistemas operacionais.
O link a seguir contém os pacotes binários de web2pypara download conforme necessidade do usuário - www.web2py.com
o web2pyframework não requer pré-instalação ao contrário de outros frameworks. O usuário precisa baixar o arquivo zip e descompactá-lo de acordo com os requisitos do sistema operacional.
o web2py framework é escrito em Python, que é uma linguagem dinâmica completa que não requer nenhuma compilação ou instalação complicada para rodar.
Ele usa uma máquina virtual como outras linguagens de programação, como Java ou .net, e pode compilar de forma transparente o código-fonte escrito pelos desenvolvedores.
Sistema operacional | Comando |
---|---|
Unix e Linux (distribuição de origem) | python web2py.py |
OS X (distribuição binária) | abra web2py.app |
Windows (distribuição binária web2py) | web2py.exe |
Windows (distribuição web2py de origem) | c: /Python27/python.exe web2py.py |