Skip to content
Alberto edited this page Jan 17, 2018 · 12 revisions

1. Estructura del proyecto.

El proyecto contendrá la siguiente estructura:

Modelos

en la carpeta app/Models:

  • Cada modelo utilizará el namespace App\Models;.
  • Los controladores se basarán en los modelos, por tanto, por ejemplo, el método login() de User se realizará en UserController.
  • Para el modelo User extendido de Authenticatable se deberá cambiar la siguiente línea:
// File: /config/auth.php
    'providers' => [
        'users' => [
            'driver' => 'eloquent',
            'model' => App\Models\User::class,
        ],

Views

Las vistas se dividirán en:

  • Páginas en la carpeta resources/views/pages.
  • Items en subcarpetas resources/views/subcarpeta.

Rutas

  • Tendrán como nombre model.metodo.
  • Seguirá un esquema APIRest, por tanto, las URL se tratarán como modelos y si se desea un usuario en concreto se utilizará:
/users/email/[email protected]
/users/id
/users/id/accionAUsuario

2. Estructura de la web.

Las páginas serán imprimidas a través de los controladores mediante el nombre showPage, siendo Page el nombre de la página que se desea mostrar.

Las páginas tendrán siempre la siguiente estructura:

@extends('layout')
@section('page')
Cuerpo de la página
@stop

Por tanto, todas las páginas heredarán la estructura de layout, el cuál se encargará de importar las librerías y ficheros globales del website. En caso se querer añadir un script o estilo CSS en especial se realizará en el cuerpo de la página.

Layout como esqueleto de la web, por tanto, tiene la siguiente estructura:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title>DevCode</title>
        <meta name="csrf-token" content="{{ csrf_token() }}" />
        scripts
    </head>
    <body>
        <header>
            contenido Header
        </header>
        <main>
            @yield('page')
        </main>
        <footer class="inner-body">
            contenido Footer
        </footer>
    </body>
</html>

3. Peticiones.

Las peticiones al servidor se harán mediante JSON, por tanto, si se desea realizar una peticion JQuery habrá que indicar:

dataType: 'JSON',
data: jsonAPasar

Para ello se formará el JSON mediante:

JSON.parse(JSON.stringify({'valName1': valName1Value, 'valName2': valName2Value}));

El controlador recogerá los datos mediante:

$request->input('$request->input('email')')

Clone this wiki locally