CGI :: Painel.

Criar aplicativos da Web dirigidos por eventos a partir dos objetos simples do painel
Baixe Agora

CGI :: Painel. Classificação e resumo

Propaganda

  • Rating:
  • Licença:
  • Perl Artistic License
  • Preço:
  • FREE
  • Nome do editor:
  • Rob Symes
  • Site do editor:
  • http://search.cpan.org/~rsymes/

CGI :: Painel. Tag


CGI :: Painel. Descrição

Criar aplicativos da Web dirigidos por eventos estaduais de objetos de painel simples CGI :: O painel é um módulo Perl que permite que os aplicativos sejam construídos de componentes simples baseados em objetos. Ele lidará com o estado de seus dados e objetos para que você possa escrever um aplicativo da Web como um aplicativo de desktop. Você pode esquecer as solicitações e as respostas HTTP, se estamos recebendo ou postando, e todas essas coisas, porque tudo isso é tratado por você, deixando para você interagir com uma simples aplicação API.AN é construída a partir de um conjunto de 'painéis', Cada um dos quais pode conter outros painéis. Os painéis são gerenciados nos bastidores como objetos persistentes. Consulte os aplicativos de amostra para exemplos de quão complexos aplicativos baseados em objetos podem ser construídos de componentes encapsulados simples. Para tentar o aplicativo Demo, copie o conteúdo do diretório 'demo' para um diretório cgi-bin.cgi :: permite que você projetar a lógica do seu aplicativo de maneira orientada por eventos. Ou seja, você configura sua inscrição da maneira que deseja, com botões especiais e links que acionam 'eventos'. O aplicativo fica de volta e quando um evento é acionado, o código associado a esse evento é executado. O código que responde a um evento vai na mesma classe que o código que gera o botão de evento ou link, tornando o código mais legível e mantido. Se o código do evento alterar o estado de qualquer um dos painéis, os painéis permanecerão no novo estado, até que seu estado seja alterado novamente. O painel é encapsulado não apenas em termos do código, mas em termos dos dados do formulário que é passado. Por exemplo, uma classe de painel pode ser definida, que tem um campo chamado "nome". Três instâncias deste painel podem então existir simultaneamente e cada um obterá o valor correto do parâmetro 'Nome' quando eles lerem seus parâmetros (consulte o método 'Local_Params' '. Aplicação de trabalho muito simples que consiste em um driver CGI e duas classes de painel ... em simpleApp.cgi: Use SimpleApp; Meu $ Simple_App = Obter SimpleApp; $ Simple_App-> ciclo (); em simpleApp.pm: pacote simpleapp; Use Base QW (CGI :: Painel); usar cesta; subit init {my ($ self) = @_; $ auto-> Add_Panel ('Basket1', nova cesta); # Adicione um sub-painel $ self-> Add_Panel ('Basket2', nova cesta); # Adicionar um sub-painel $ self-> Add_Panel ('Basket3', nova cesta); # Adicionar um sub-painel $ auto-self -> {Contagem} = 1; # Initialise alguns dados persistentes} sub} sub }DD {# Responder ao botão Clique no evento abaixo do meu ($ self, $ evento) = @_; $ auto -> {Contagem} ++; # Alterar o Data Persistente} Sub Display {My ($ Auto) = @_; Retornar 'este é um aplicativo muito simples.' . # Exibir os dados persistentes ... "Minha contagem atual é de US $ -> {Contagem}". # Exibe os sub-painéis ... "

". "
". $ self-> painel ('Basket1') -> Exibir. "". "". $ self-> painel ('Basket2') -> Exibir. "". "". $ self-> painel ('Basket3') -> Exibir. "". "
". # Exibir um botão que irá gerar um evento ... $ Self-> Event_Button (Label => 'Adicionar 1', Nome => 'Add'); } 1; no cesto.pm: cesta de pacotes; Use Base QW (CGI :: Painel); subit init {my ($ self) = @_; $ auto -> {conteúdo} = []; } sub _Event_add {# Responda ao evento do botão em 'exibir' meu ($ self, $ evento) = @_; # Obter os parâmetros localizados do painel # (muitas instâncias deste painel, cada um deles obtém # seus próprios parâmetros locais) My% local_params = $ auto-> local_params; push @ {$ auto -> {conteúdo}}, $ local_params {item_name}; } Sub Display {My ($ Auto) = @_; return '
'. Junte-se ('', (Mapa {""} @ {$ auto -> {Conteúdo}})). ''. # Campo de texto localizado ''. '
$ _
'. $ self-> Local_TextField ({nome => 'item_name', tamanho => 10}). ''. # Botão que irá gerar um evento (manipulado por _event_add acima) ''. $ auto-> event_button (etiqueta => 'add', nome => 'add'). ''. '
'; }; 1; Requisitos: · Perl.


CGI :: Painel. Software Relacionado