Aldeia Numaboa

  • Increase font size
  • Default font size
  • Decrease font size
Home Informática Tutoriais e Programação Joomla Componente 1.5 MVC - Funcionalidade admin II

Componente 1.5 MVC - Funcionalidade admin II

Indique esta página Imprimir PDF
(18 votos, média 4.7 de 5)
Índice do Artigo
Componente 1.5 MVC - Funcionalidade admin II
Atualizar Modelo
O controlador ola
Deletar registros
Todas as páginas

Se você conseguiu sobreviver ao tsunami que foi até agora a criação do componente MVC, então este último tutorial da série não será problema. Aprenda a lidar com a tabela do componente para poder salvar, deletar e atualizar mensagens porque é só isto que está faltando.

Salvar um registro

Normalmente precisamos de alguns switches e da lógica para manipular várias situações como, por exemplo, optar entre uma query de inserção (INSERT) quando o registro for novo e uma query de atualização (UPDATE) quando o registro tiver sido editado. Também existem alguns complicadores na hora de obter dados dos formulários para incluí-los em queries.

Para nossa sorte, o framework do Joomla faz a maior parte do serviço. A classe JTable facilita nossa vida e nos possibilita lidar com tabelas sem ter que se preocupar com o SQL envolvido nas operações. Além disto, também facilita muito a transferência de dados de um formulário HTML para a base de dados.

Criando a classe Tabela

A classe JTable é uma classe abstrata da qual podemos derivar classes filhas para trabalhar com tabelas específicas. Para usá-la, basta criar uma classe que estenda a classe JTable, adicionar os campos da tabela como propriedades e sobrepor o construtor para especificar o nome da tabela e sua chave primária.

<?php
/**
 * Classe Tabela do Ola
 * 
 * @package    Joomla.Tutoriais
 * @subpackage Componentes
 * administrator/components/com_ola/tables/ola.php
 * @link       http://www.numaboa.com/
 * @license    Creative Commons by-nc-sa
 */
 
// evitar acesso direto
defined('_JEXEC') or die('Acesso restrito');
 
/**
 * Classe Tabela Ola
 */
class TableOla extends JTable
{
    /**
     * Chave Primária
     *
     * @var int
     */
    var $id = null;
 
    /**
     * @var string
     */
    var $mensagem = null;
 
    /**
     * @var int
     */
    var $published = null;
 
    /**
     * Constructor
     *
     * @param object Database connector object
     */
    function TableOla( &$db ) {
        parent::__construct('#__ola', 'id', $db);
    }
}
?>

Nesta classe tabela definimos três campos: id, mensagem e published. Depois definimos um construtor que chama o construtor da classe mãe passando o nome da tabela (ola), o nome do campo que é a chave primária (id) e o objeto conector da base de dados.

Crie um novo diretório /administrator/components/com_ola/tables e coloque neste diretório o script ola.php mostrado acima.



Atualização Qui, 18.06.2009 11:42  

Na Aldeia

Há 108 visitantes online

3630 registros
0 hoje
14 nesta semana
4 neste mês

Boas vindas: flor

Estatística

Membros: 3639
Artigos: 1045
Links: 90
Leituras: 6681268

Login

Kanji da hora




Faça contato







Não diga que não avisei ===> No Internet Explorer o meu site fica uma porcaria. Use qualquer outro navegador, porque não tenho tempo e nem paciência para ficar remendando todas as páginas só para atender as sandices do pessoal da microsoft. Que tal experimentar o Firefox, o Opera, o Chrome ou o Safari?