desenvolvimento com codeigniter

3
Desenvolvimento com Codeigniter Olá, hoje irei explicar como configurar (ao menos como eu uso) uma instalação básica do Codeigniter pronta para desenvolver a sua aplicação. O que iremos fazer Neste primeiro tutorial, iremos criar um template, de modo que você não repetirá mais conteúdo desnecessário (Don‟t repeat yourself), como cabeçalhos e rodapés. Ao final desse tutorial você terá uma aplicação que: Terá uma página de template, que carregará suas views dinamicamente. O título da página também será trocado dinamicamente. Poderá facilmente fazer alterações futuras no template, ou até mesmo criar outro, e alterar somente uma linha para usar o novo, podendo depois voltar para os antigos. Conhecimentos Esse tutorial assume que você já tem algum conhecimento sobre como funciona a estrutura MVC. Se você não sabe o que é ou como funciona, leia esse artigo antes de iniciar. Também já deve ter tido alguma experiência com o framework. Se você sabe como funciona MVC mas nunca usou o Codeigniter, recomendo assistir essa vídeo-aula. 1 Nova Instalação do Codeigniter Faça o download do framework em http://codeigniter.com/downloads/. Descompacte-o em sua pasta do servidor local (no meu caso em /srv/www/htdocs/). Se quiser renomeie a pasta extraída para qualquer nome de sua prefêrencia. Normalmente eu tiro a pasta application de dentro da pasta system, para uma melhor organização. Feito isso, abra o arquivo application/config.php e altere a linha 14 para o seu diretório padrão (localização da sua pasta no servidor). No meu caso ficou assim: $config['base_url'] = "http://localhost/ci/"; Feito isso seu Codeigniter já está pronto para continuarmos. Acesse no seu navegador: http://localhost/ci (ou troque ci pelo nome da pasta que você renomeou) e verá a tela de boas vindas. A estrutura padrão dos endereços é: ../index.php/Controller/Método/Parâmetro. Onde “..” é a sua base_url (ver explicação logo acima). PS: irei usar “..” para representar a base_url daqui pra frente.

Upload: kalazansalan

Post on 30-Nov-2015

23 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Desenvolvimento Com Codeigniter

Desenvolvimento com Codeigniter

Olá, hoje irei explicar como configurar (ao menos como eu uso) uma instalação básica

do Codeigniter pronta para desenvolver a sua aplicação.

O que iremos fazer

Neste primeiro tutorial, iremos criar um template, de modo que você não repetirá mais

conteúdo desnecessário (Don‟t repeat yourself), como cabeçalhos e rodapés.

Ao final desse tutorial você terá uma aplicação que:

Terá uma página de template, que carregará suas views dinamicamente.

O título da página também será trocado dinamicamente.

Poderá facilmente fazer alterações futuras no template, ou até mesmo criar

outro, e alterar somente uma linha para usar o novo, podendo depois voltar para

os antigos.

Conhecimentos

Esse tutorial assume que você já tem algum conhecimento sobre como funciona a

estrutura MVC. Se você não sabe o que é ou como funciona, leia esse artigo antes de

iniciar.

Também já deve ter tido alguma experiência com o framework. Se você sabe como

funciona MVC mas nunca usou o Codeigniter, recomendo assistir essa vídeo-aula.

1 – Nova Instalação do Codeigniter

Faça o download do framework em http://codeigniter.com/downloads/. Descompacte-o

em sua pasta do servidor local (no meu caso em /srv/www/htdocs/).

Se quiser renomeie a pasta extraída para qualquer nome de sua prefêrencia.

Normalmente eu tiro a pasta application de dentro da pasta system, para uma melhor

organização.

Feito isso, abra o arquivo application/config.php e altere a linha 14 para o seu diretório

padrão (localização da sua pasta no servidor). No meu caso ficou assim:

$config['base_url'] = "http://localhost/ci/";

Feito isso seu Codeigniter já está pronto para continuarmos. Acesse no seu navegador:

http://localhost/ci (ou troque ci pelo nome da pasta que você renomeou) e verá a tela de

boas vindas.

A estrutura padrão dos endereços é: ../index.php/Controller/Método/Parâmetro. Onde

“..” é a sua base_url (ver explicação logo acima).

PS: irei usar “..” para representar a base_url daqui pra frente.

Page 2: Desenvolvimento Com Codeigniter

2 – Criando nosso controller

Crie um arquivo chamado site.php no diretório application/controllers/. Esse será o

controller principal do site. A estrutura ficará assim:

class Site extends CI_Controller { // herda as características da classe Controller do CodeIgniter, todos os controllers serão suas

subclasses

function __construct() { parent::__construct(); //chama o construtor da superclasse, este

pode ser usado para carregar qualquer tipo de componente do sistema }

function index() { // método principal do controller, acessível em

../index.php/site/index ou ../index.php/site/ echo 'Método Index do Controller Site'; }

3 – Criando o Template

Ok, com o controller funcionando, criaremos finalmente o template da nossa aplicação.

Como você já deve ter visto, o comando para exibir as views é:

$this->load->view('nome_da_view');

E é comum usarem da seguinte forma, em cada função, para gerar “templates” :

function exemplo() { $this->load->view('topo'); $this->load->view('view_exemplo'); $this->load->view('rodape'); }

Isso não está errado, porém há uma forma mais simplificada de fazer isso, como

veremos agora. Usando nosso controller site como base, vamos criar duas propriedades

(ou atributos) na nossa classe:

class Site extends Controller { private $_tpl = 'themes/template1'; private $dados = array();

Criamos aqui a propriedade _tpl, que nada mais é do que a localização da view do

template (criei um diretorio para colocar só os temas). Se você criar outro template,

basta alterar aqui.

A segunda propriedade $dados, é um array em que será passado dados para exibir nossa

view, como o título da página e a view que será carregada no template. Vou alterar a

função index como exemplo:

function index() { $this->dados['titulo'] = 'Olá, seja bem vindo !';

Page 3: Desenvolvimento Com Codeigniter

$this->dados['pagina'] = 'principal'; $this->load->view($this->_tpl, $this->dados); }

Aqui carreguei a view themes/template1, e passei para ela todos os dados de $dados,

agora veremos como ficará nossa view

application/views/themes/template1.php

Percebam que criei um layout bem básico, na tag “title”, está mandando imprimir a

variável $titulo, vinda do controller através do array $dados (note que o array não é

passado, tudo que vem dentro dele se torna uma variável dentro da view).

Talvez o mais difícil de entender aqui seja essa parte:

Dentro da div#main_content, eu dei o comando pra carregar outra view, a variável

$pagina, que como definida no nosso controller será a „principal‟, fazendo com que o

template carregue qualquer view definida nos controllers. Para exemplificar melhor

criarei outro método. Também criei uma view menu, e um estilo em css, como podem

ver na estrutura do meu projeto (amplie a foto).

O controller ficará assim ao final do tutorial:

class Site extends CI_Controller {

private $_tpl = 'themes/template1'; private $dados = array();

function __construct() { parent::__construct(); }

function index() {

$this->dados['titulo'] = 'Olá, seja bem vindo !'; $this->dados['pagina'] = 'principal'; $this->load->view($this->_tpl, $this->dados);

}

function outraview() {

$this->dados['titulo'] = 'Olá, essa é outra view !'; $this->dados['pagina'] = 'outra_view'; $this->load->view($this->_tpl, $this->dados);

}

}

Você deve estar se perguntando, “como vou incluir javascripts?”

Simples, você adiciona somente nas views que for realmente utilizar, é até uma boa

prática, incluir os seus javascripts no final do arquivo, tendo assim uma renderização

progressiva da página.