Diferencia entre revisiones de «Usuario:ManuelRomero/Laravel/formularios»

De WikiEducator
Saltar a: navegación, buscar
(Crear formularios usando Collection)
(Validar formularios)
Línea 29: Línea 29:
 
'HTML'=> 'Collective\Html\HtmlFacade'
 
'HTML'=> 'Collective\Html\HtmlFacade'
 
</source>
 
</source>
 +
 +
===Creando un formulario===
 +
;Creando una etiqueta form
 +
<source lang=php>
 +
{!! Form::open(.....) !!}
 +
    //
 +
{!! Form::close() !!}
 +
</source>
 +
;Especificando atributos del formulario action y method
 +
*Especifico url (ruta) y método
 +
<source lang=php>
 +
{!! Form::open(['url' => 'foo/bar', 'method' => 'post'])!!}
 +
</source>
 +
 +
*Especifico el nombre de una ruta
 +
<source lang=php>
 +
echo Form::open(['route' => 'route.name'])
 +
</source>
 +
 +
*Escificando un método de un controlador
 +
<source lang=php>
 +
echo Form::open(['action' => 'Controller@method'])
 +
</source>
 +
 +
*Se pueden pasar parámetros al método o ruta especificada
 +
<source lang=php>
 +
echo Form::open(['action' => 'Controller@method', $nombre])
 +
</source>
 +
;Crear un formulario basado en un modelo
 +
{!! Form::model($user, ['route' => ['user.update', $user->id]])!!}
  
 
===Validar formularios===
 
===Validar formularios===
Línea 68: Línea 98:
 
}
 
}
 
</source>
 
</source>
 +
 
===Sesiones===
 
===Sesiones===
 
https://styde.net/uso-de-sesiones-en-laravel-5-1/
 
https://styde.net/uso-de-sesiones-en-laravel-5-1/

Revisión de 10:54 26 feb 2020

Crear formularios usando Collection

https://laravelcollective.com/docs/5.8/html
  • Podemos instalarlo en línea de comandos, o agregando el paquete en composerr.json
  • En línea de comandos
 composer require laravelcollective/html
  • En composer.json
  "require": {
        "laravelcollective/html": "^6.0"
    },


Ahora update composer.json (require part)

  • Ahora debemos agregar el alias y el provider en nuestro fichero de configuración para poderlo usar
  • Estos ficheros componene el psr-4
  • Agregamos en app.php
'Collective\Html\HtmlServiceProvider'
  • Y ahora agregamos los alias
'Form'=> 'Collective\Html\FormFacade',
'HTML'=> 'Collective\Html\HtmlFacade'

Creando un formulario

Creando una etiqueta form
{!! Form::open(.....) !!}
    //
{!! Form::close() !!}
Especificando atributos del formulario action y method
  • Especifico url (ruta) y método
{!! Form::open(['url' => 'foo/bar', 'method' => 'post'])!!}
  • Especifico el nombre de una ruta
echo Form::open(['route' => 'route.name'])
  • Escificando un método de un controlador
echo Form::open(['action' => 'Controller@method'])
*Se pueden pasar parámetros al método o ruta especificada
echo Form::open(['action' => 'Controller@method', $nombre])
Crear un formulario basado en un modelo

{!! Form::model($user, ['route' => ['user.update', $user->id]])!!}

Validar formularios

  • Para validar formularios podemos crear una clase request usando artisan
php artisan make:request  nombre
  • Con esta acción tedremos una nueva clase en app/Http/Controller/Request/nombre

en esta clase tendremos el código limpio para implemntar reglas de validación en el servidor

  • En este caso el nombre puesto ha sido Alumnos
<?php
 
namespace App\Http\Requests;
 
use Illuminate\Foundation\Http\FormRequest;
 
class Alumnos extends FormRequest
{
    /**
     * Determine if the user is authorized to make this request.
     *
     * @return bool
     */
    public function authorize()
    {
        return false;
    }
 
    /**
     * Get the validation rules that apply to the request.
     *
     * @return array
     */
    public function rules()
    {
        return [
            //
        ];
    }
}

Sesiones

https://styde.net/uso-de-sesiones-en-laravel-5-1/