En este post te mostraré cómo puedes agregar campos de la tabla “users” en Laravel para así poder añadir algunos campos al modelo User. Explicado con otras palabras vamos a modificar la tabla de usuarios.
Con este modelo me refiero al usuario que se usa para iniciar sesión y en general hacer la autenticación en Laravel. Veremos cómo agregar otro campo además de los que ya existen.
Comencemos modificando la tabla, y para ello vamos a crear una migración. En mi caso agregué a mis usuarios un campo llamado “Nombre del establecimiento” por lo que generé la migración así:
php artisan make:migration AgregarNombreEstablecimientoAUsuarios --table=users
No olvides especificar el nombre de la tabla que en este caso es users. Ya dentro de la migración, agregué la columna y le coloqué un valor por defecto. Se ve así:
<?php
use Illuminate\Database\Migrations\Migration;
use Illuminate\Database\Schema\Blueprint;
use Illuminate\Support\Facades\Schema;
class AgregarNombreEstablecimientoAUsuarios extends Migration
{
/**
* Run the migrations.
*
* @return void
*/ public function up()
{
Schema::table('users', function (Blueprint $table) {
$table->string("nombre_establecimiento")->default("");
});
}
/**
* Reverse the migrations.
*
* @return void
*/ public function down()
{
Schema::table('users', function (Blueprint $table) {
$table->dropColumn("nombre_establecimiento");
});
}
}
Ahora migramos con php artisan migrate
y nuestra tabla de usuarios debería estar modificada.
La tabla de usuarios de Laravel ya está modificada, ahora falta modificar el modelo. Vamos a modificar sus fillables para que así podamos enviarle los valores desde el formulario.
Abrimos app\User.php
y en fillables
agregamos la propiedad recién agregada a la tabla. En mi caso queda así:
<?php
protected $fillable = [
'name', 'email', 'password', 'nombre_establecimiento',
];
Con eso es suficiente; ahora si usas los controladores resource y los fillables, solo es cuestión de enviar también el campo nombre_establecimiento
al registrar al usuario. Te mostraré un ejemplo.
En mi caso utilizo fillables y resources para hacer el desarrollo más rápido. Sé que son cosas distintas, pero en conjunto ahorran bastante código. Ahora bien, solo hay que agregar el campo por ejemplo al registrar:
<div class="form-group">
<label class="label">Nombre establecimiento</label>
<input required autocomplete="off" name="nombre_establecimiento" class="form-control"
type="text" placeholder="Nombre establecimiento">
</div>
Con eso estaría llenándose el modelo y guardándose con el dato recién añadido.
Por cierto, si obtienes todos los usuarios con User::all()
ya puedes acceder e imprimir la propiedad nombre_establecimiento
o como se llame la propiedad que agregaste.
¿Te gusta Laravel? mira más tutoriales en mi blog.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.