Listar registros en Laravel

Implementaremos el método index para extraer registros de la tabla noticias con elocuent y los mostraremos en la vista welcome

Modificando el controlador NoticiasController

Abrimos NoticiasController.php verificamos que podamos usar el modelo noticias :

use App\noticias

Luego en el método index realizamos los siguientes cambios, que debería quedar de la siguiente manera:

public function index()
    {
        // codigo para listar las noticias 
        $noticias=noticias::all();        
        return view("welcome",compact('noticias'));
    }

Explicando, en la variable $noticias almacenamos todos los registros de la tabla noticias a través del modelo noticias con la consulta all(), y la enviamos  a la vista compact('noticias'), básicamente lo convierte en un objeto json.

Modificando la vista welcome

@extends('layouts.app')
@section('content')
<div class="container">
    <div class="row">
        <!-- listado de las noticias-->
        <div class="col-12">
        <h1>LISTADO</h1>                
        <a href="{{ route('noticias.create') }}" class="btn btn-primary">Nuevo</a>
        @if(!empty($noticias))
        	<table class="table">
        		<thead>
        			<th>ID</th>
        			<th>NOMBRE</th>
        			<th>ACCION</th>
        		</thead>
        		<tbody>
        	@foreach($noticias as $r)
        		<tr>
        			<td>{{$r->id}}</td>
        			<td>{{$r->titulo}}</td>
        			<td>
        				<a class="btn btn-primary" href="{{ route('noticias.edit',$r->id) }}">Editar</a>
        				{!! Form::open(['method' => 'DELETE','route' => ['noticias.destroy', $r->id],'style'=>'display:inline']) !!}
                        {!! Form::submit('Eliminar', ['class' => 'btn btn-primary']) !!}
                        {!! Form::close() !!}        				
        			</td>
        		</tr>
        	@endforeach
        		</tbody>
        	</table>        	
        @else
        <div class="col-12">
         	<p>No hay noticias</p>
         </div>
        @endif
        </div>	
    </div>
</div>
@endsection

Podemos notar que estamos usando dos estructuras:

  1. if.-  La cual realiza un condicionale preguntando si la variable $noticias esta vacia o llena, si esta vacia muestra un mensaje, caso contrario  visualizará los datos con el for.
  2. for.- recorre los elementos de la variable $noticias 

Ahora, podemos ver que hay tres botones, además de un listado de los registros de la tabla noticias

  • El primer botón o link hace referencia a crear un nuevo registro y est asociado al método create
  • El segundo a editar el registro elegido asociado al método edit
  • Y el tercero a eliminar el registro elegido y esta asociado al método destroy

Entonces podemos decir que tenemos un panel de control básico pero suficiente para nuestro proyecto de Noticias.

En la 9na parte veremos como instalar el componente Laravel Collective.

Cómo listar registros en Laravel

Visto: 130 | Publicado:2018-10-19 19:21:26


« Lección 7

Crear rutas en Laravel

CURSOS GRATIS QUE TE PUEDEN INTERESAR

Lector de Códigos QR

Curso de Lector de Códigos QR

Lector de Códigos QR en Android PHP MYSQL

Desarrollo de una aplicación Android LECTOR DE CÓDIGOS QR en PHP, MYQL, JAVA

App de Noticias

Curso de App de Noticias

Curso App de Noticias en Android y Laravel

Curso avanzado de programación fullstack desarrollo de un proyecto de Noticias con Laravel y Android, consumo de datos a través servicios web

Página Web Básica

Curso de Página Web Básica

Cómo hacer una Página Web Básica en HTML y CSS

Aprenderás el proceso de diseño y maquetación de una página web usando los lenguajes HTML y CSS, desarrollada y explicada linea por línea.

CRUD con PHP + VUE + MYSQL

Curso de CRUD con PHP + VUE + MYSQL

Sistema usuarios en Php Vue.js y Mysql con imágenes

Desarrollo de una Aplicación web con PHP VUE.js y Mysql CRUD: New, Edit, Delete y List

App Flutter Copa América

Curso de App Flutter Copa América

Desarrollo de una App Copa América 2019 en Flutter desde 0

Desarrollaremos una app con servicios web, sqflite, componentes drawer, tabbar, listView, GridView, etc

Facebook Twitter Youtube Pinterest Wordpress Google Plus

:: Calle Paucarpata 130 Of. 212 2do Piso CC. AQPcompucentro ::
:: © Todos los derechos reservados APPTIVA WEB | Arequipa Perú 2010-2018 ::