7 junio, 2019
¿Cómo extraer el registro next y prev en Laravel ? Realizamos consultas elocuent que extraen datos a partir de recibir como parámetro el ID del registro
Suscríbete a nuestro canal en Youtube
SuscríbirseTener un botón de next o siguiente en una aplicación web es un método mucho más optimizado que tener un paginador completo con rangos de páginas.
Programando la función que cumplirá la acción de determinar el registro anterior y posterior calculada en base al registro actual de la consulta:
public function registro($id){
//RETORNAR EL REGISTRO SIGUIENTE Y ANTERIOR DE UN REGISTRO ACTUAL//
$registro = Modelo::where("id",$id)
->first();
$next = Modelo::where('id', '>', $registro->id)
->orderBy('id', 'asc')
->first();
$prev = Modelo::where('id', '<', $registro->id)
->orderBy('id', 'desc')
->first();
return view("vista.registro",compact('registro','next','prev'));
}
La función registro espera un parámetro definido como $id;
Consulta nro 1.- $registro = Modelo::where("id",$id)->first(); Esta consulta extrae el registro que coincide el valor del $id que tiene como parámetro.
Luego retornamos en una vista blade todos los datos del registro actual, el siguiente registro en next y el registro anterior en prev
La forma de acceder a los datos mediante una vista o plantilla blade es la siguiente
Muy fácilmente, colocamos dos links con la etiqueta html; veamos un ejemplo de código html y blade:
<div class="row">
<div class="col-6">
@if(!empty($prev))
<a href="/registro/{{$prev->slug}}" class="btn btn-outline-success btn-sm btn-block" >
« Anterior{{$prev->id}}
</a>
<p>{{$prev->nombre}}</p>
@endif
</div>
<div class="col-6 text-right">
@if(!empty($next))
<a href="/registro/{{$next->slug}}" class="btn btn-outline-success btn-sm btn-block" >
siguiente{{$next->id}} »
</a>
<p class="text-right">{{$next->nombre}}</p>
@endif
</div>
</div>
Explicando un poco la funcionalidad, tenemos dos botones uno que nos lleva al registro anterior y el otro al registo siguiente.
Concluimos que implementar esta funcionalidad en una aplicación web es bastante sencillo usando blade con el framework de desarrollo web Laravel. Hasta un proximo script de código PHP.
Leido 7293 veces | 0 usuarios
Código fuente no disponible.
© Copyright Codea::App Cursos de Programación Online | LATAM | 2020 - 2024