Vous êtes sur la page 1sur 5

Sistema de visitas bibliotecarias.

El sistema está desarrollado en base a la metodología Modelo Vista Controlador(MVC), que se


encarga de separar la lógica del negocio de la naturaleza de la aplicación y así poder conectar varias
aplicaciones independientemente de el lenguaje en que se desarrolle. Esta metodología es adoptada por
muchos lenguajes de programación, los cuales a su vez se puede hacer uso de los frameworks que estos
ofrecen, para el caso se usa PHP y su framework mas extendido Laravel en su versión 5.2.

Al instalar Laravel nos aseguramos también de instalar Artisan, una herramienta muy útil al momento
de querer desarrollar con este framework.

Modelo

Los modelos son creados usando artisan, con un simple comando podemos generar la estructura de un
modelo, relacionarlos a una tabla y finalmente tenerlos disponibles para los controladores, la ruta en el
proyecto es bbtc\app\Modulo.
php artisan make:model NombreDelModelo

Este simple comando crea un archivo en la carpeta app/NombreDelModelo.php Los modelos también
se pueden guardar y ordenar en una ubicación diferente, siempre y cuando extienda de la carpeta “app”
en este caso se crearon dos ubicaciones diferentes llamadas “catalogo” y “alumno” todos tienen la
siguiente estructura:

namespace App;

use Illuminate\Database\Eloquent\Model;

class NombreDelModelo extends Model


{
//
}

Todos los modelos que se crean se deben relacionar a una tabla de la base de datos y crear además las
funciones que permitan consultar los datos de sus tablas relacionadas basándose en sus modelos.
para la conexion a la base de datos existe un archivo llamado .env y esta detro de la carpeta BBTC, en
ello se configura el nombre de la base de datos y contraseña.
Vistas

Las vistas son simples simples layouts o estructuras(en este caso html) que es presentada a los usuarios
del sistema. Se resume en ser los formularios, dashboards, gráficas y presentadas para ver, agregar y
modificar datos del sistema.

Estas se almacenan en la carpeta bbtc\resources\views, en ello se encuentra todas las vistas de los
modulos .
Un ejemplo de ello:

<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<!-- Meta, title, CSS, favicons, etc. -->
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">

<title>BBTC | Acceso</title>
<!-- Bootstrap -->
{!! Html::style('assets/vendors/bootstrap/dist/css/bootstrap.min.css') !!}
<!-- Font Awesome -->
{!! Html::style('assets/vendors/font-awesome/css/font-awesome.min.css') !!}
<!-- Animate.css -->
{!! Html::style('https://colorlib.com/polygon/gentelella/css/animate.min.css') !!}
<!-- Normalize.css -->
{!! Html::style('assets/build/css/normalize.css') !!}
<!-- Custom Theme Style -->
<!--{!! Html::style('assets/build/css/custom.min.css') !!}-->
{!! Html::style('assets/build/css/style_login.css') !!}
</head>
<body>
<div class="row" style="padding-top:30px;">
<div class="col-md-4 text-center">
<img src="{{ url('images/logo-sep.png') }}" alt="Logo SEP" border="0px" width="350px">
</div>
<div class="col-md-4 text-center"><p style="color:#000; font-size:xx-large;">Tecnológico
Nacional de México</p><p style="color:#000; font-size:x-large;">Instituto Tecnológico de
Tapachula</p></div>
<div class="col-md-4 text-center">
<img src="{{ url('images/logo-itt.png') }}" class="img-circle" alt="Logo ITT" border="0px"
width="150px">
</div>
</div>
<div class="row">
<div class="container">
@if (Session::has('errors'))
<div class="alert alert-warning" role="alert">
<ul>
<strong>Oops! algo va mal: </strong>
@foreach ($errors->all() as $error)
<li>{{ $error }}</li>
@endforeach
</ul>
</div>
@endif
</div>
</div>
<div class="row">
<div class="login text-center">
<div class="login_wrapper">
<div class="animate form login_form">

<section class="login_content">
{!! Form::open(['route' => 'auth/login', 'class' => 'form']) !!}
<h1>BBTC V1.0</h1>
<div class="form-group">
{!! Form::label('email', 'Correo Electrónico') !!}
{!! Form::email('email', '', ['class'=> 'form-control', 'id' => 'email', 'required' => 'required',
'autofocus' => 'true', 'autocomplete' => 'off', 'placeholder' => 'micorreo@dominio.com']) !!}
</div>
<div class="form-group">
{!! Form::label('password', 'Contraseña') !!}
{!! Form::password('password', ['class'=> 'form-control', 'id' => 'password', 'required' =>
'required', 'placeholder' => '*******']) !!}
</div>
<div>
{!! Form::submit('Ingresar',['class' => 'btn btn-default']) !!}
</div>
<div class="clearfix"></div>
<div class="separator">
<div class="clearfix"></div>
</div>
{!! Form::close() !!}
</section>
</div>
</div>
</div>
</div>
<div class="foot-details">
<div class="text-center" style="color:#000; font-size:small;"> Km. 2 Carretara a Puerto Madero.
Tapachula, Chiapas, CP30700
<br>Tel. (+521+962) 62 52880, 62 52900, 62 54873, 62 54389 Ext. 102 y Fax 104 <br>
email:webmaster@ittapachula.edu.mx </div>
</div>
</body>
</html>

Controlador

Los controladores se encargan de servir las respuestas a los clientes de manera genérica, resolviendo las
peticiones y procesando los datos que le son solicitados. Estos se crean con el comando:

php artisan make:controller NombreDelControlador

Y su contenido es almacenado en app/Http/Controllers/ Aunque se pueden guardar en otra ubicación


después de esta dirección, en este caso: “catalogo” y “modulo”.
Los controladores consumen a los modelos y sirven las respuestas en formato JSON(al menos para esta
aplicación) a los clientes. Y contienen todas las funciones públicas y anonimas que puedan usarse para
cada modulo de nuestro sistema.

Un ejemplo de controlador sería:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;
use App\Http\Controllers\Controller;

class NombreDelControlador extends Controller


{
/**
* Display a listing of the resource.
*
* @return \Illuminate\Http\Response
*/
public function index()
{
//
}

/**
* Show the form for creating a new resource.
*
* @return \Illuminate\Http\Response
*/
public function create()
{
//
}

/**
* Store a newly created resource in storage.
*
* @param \Illuminate\Http\Request $request
* @return \Illuminate\Http\Response
*/
public function store(Request $request)
{
//
}

/**
* Display the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function show($id)
{
//
}

/**
* Show the form for editing the specified resource.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function edit($id)
{
//
}

/**
* Update the specified resource in storage.
*
* @param \Illuminate\Http\Request $request
* @param int $id
* @return \Illuminate\Http\Response
*/
public function update(Request $request, $id)
{
//
}

/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
//
}
}

Vous aimerez peut-être aussi