MVC, MVT e Template Engine - #5 Criando Páginas
27/05/2020No tutorial de hoje aprenderemos como configurar o nosso sistema para criar páginas para linkar os assuntos na nossa aplicação.
Criando páginas no MVC
O interessante no sistema é que cada página tenha seu próprio controller. Vamos iniciar criando a rota, o controller e a view.
routes/web.php
<?php
$routes=new \Controllers\RoutesController();
$routes->getRoute('','HomeController@index');
$routes->getRoute('produto','ProdutoController@index');
$routes->getRoute('contato','ContatoController@showContacts');
Vamos criar também os controllers e métodos associados:
ProdutoController.php
<?php
namespace Controllers;
use Jenssegers\Blade\Blade;
class ProdutoController{
private $blade;
public function __construct()
{
$this->blade=new Blade(DIRREQ.'views',DIRREQ.'lib/cache');
}
#Página index
public function index($url=null,$tipo=null,$marca=null)
{
return $this->blade->render('produto',compact('tipo','marca'));
}
}
Em relação ao produto, precisamos criar a view que vai exibir a parte gráfica aos usuários:
@extends('templates.default')
@section('title','Produtos')
@section('content')
<h1>Meus Produtos</h1>
Tipo: {{$tipo ?? '-'}} <br>
Marca: {{$marca ?? '-'}} <br>
<a href="@php echo DIRPAGE.'produto/geladeira/consul'; @endphp">Geladeira Consul</a>
<a href="@php echo DIRPAGE.'contato'; @endphp">Fale Conosco</a>
@endsection
ContatoController.php
<?php
namespace Controllers;
use Jenssegers\Blade\Blade;
class ContatoController{
private $blade;
public function __construct()
{
$this->blade=new Blade(DIRREQ.'views',DIRREQ.'lib/cache');
}
#Página index
public function showContacts()
{
return $this->blade->render('contato');
}
}
A ordem para criação de uma nova página é:
1 - Criar a view (/views)
2 - Criar o controller (/controllers)
3 - Criar a rota (routes/web.php)
Por hoje é só! Sucesso nos códigos e na vida!
Precisando de um professor particular? webdesignemfoco@gmail.com
Posts Relacionados
MVC, MVT e Template Engine - #4 Rotas
Continuando nosso curso de MVC, MVT e Template Engine, nessa vídeoaula aprenderemos sobre rotas. As rotas determinam os controllers de acordo com a requisição.
MVC, MVT e Template Engine - #6 Models
No tutorial de hoje trabalharemos com models. Os models servem para manipular bancos de dados, webservices, dentre outros.