29. Creando el Modelo y Controlador de la tabla
Creando el Modelo y Controlador de la tabla Cursos
En este tutorial, vamos a crear el modelo y controlador para la tabla de Cursos en nuestro proyecto.
Creación del modelo y controlador
Abrimos nuestra terminal y ejecutamos los siguientes comandos:
php artisan make:model CursosEl modelo ha sido creado satisfactoriamente.
php artisan make:controller CursosControllerEl controlador ha sido creado satisfactoriamente.
Configuración del modelo
En nuestro modelo Cursos.php, nos conectamos a la tabla correspondiente:
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;
class Cursos extends Model
{
use HasFactory;
protected $table = 'cursos';
protected $primaryKey = 'id';
public $timestamps = true;
}Configuración del controlador
En nuestro controlador CursosController.php, importamos el modelo y creamos la función índice:
<?php
namespace App\Http\Controllers;
use App\Models\Cursos;
use Illuminate\Http\Request;
class CursosController extends Controller
{
/**
* Mostrar todos los registros
*/
public function index()
{
$cursos = Cursos::all();
if($cursos->isEmpty()) {
return response()->json([
'status' => 404,
'total_registros' => 0,
'message' => 'No hay ningún curso registrado'
], 404);
}
return response()->json([
'status' => 200,
'total_registros' => $cursos->count(),
'detalles' => $cursos
], 200);
}
}Configuración de rutas
En el archivo routes/web.php, agregamos la ruta para acceder a nuestros cursos:
use App\Http\Controllers\CursosController;
Route::get('/cursos', [CursosController::class, 'index']);Probando nuestro endpoint
Al acceder a la ruta /cursos con el método GET, obtendremos una respuesta JSON con todos los registros de la tabla cursos:
{
"status": 200,
"total_registros": 60,
"detalles": [
{
"id": 1,
"nombre": "Curso de Laravel",
"descripcion": "Aprende Laravel desde cero",
// ... otros campos
},
// ... más cursos
]
}¡Hemos creado exitosamente el modelo y controlador para la tabla de Cursos!
Comentarios
Publicar un comentario