retornar vista con parametros laravel

publicado por: Anonymous

Tengo un problema al pasar una variable a un vista (probé y si esta trayendo los datos de la BD), cuando mando la variable me aparece como no encontrada, ya que es dentro de una sesión, también probe con un Auth::book
pero no resulta.

Aquí esta la ruta:

Route::get('dashboard', '[email protected]')->name('dashboard');

Aquí los métodos del controlador:

public function __construct()
{
    $this->middleware('auth');
}


public function index()
{
    $booksFounded = Book::all();
    //var_dump($booksFounded);
    //die();
    return view('dashboard', $booksFounded);

}

la vista:

_x000D_

_x000D_

@include('layouts/headerUser')_x000D_
<div class="container mt-5">_x000D_
    <div class="row">_x000D_
        <div class="col-3"></div>_x000D_
        <div class="col-4" >_x000D_
            <h3 class="panel-title"> Bienvenido </h3>_x000D_
            <br>_x000D_
            @foreach ($booksFounded as $book)_x000D_
                <p>This is book {{ $book->name }}</p>_x000D_
            @endforeach_x000D_
_x000D_
            {{-- @foreach ($booksFounded as $book)_x000D_
                <p>This is book {{ $book->name }}</p>_x000D_
            @endforeach --}}_x000D_
            _x000D_
            <form method="POST" action="{{ route('logout') }}" >_x000D_
                {{ csrf_field() }}_x000D_
                <button class="btn btn-primary btn-block">Cerrar Sesion</button>_x000D_
            </form>_x000D_
        </div> _x000D_
    </div>_x000D_
</div>_x000D_
@include('layouts/footer')

_x000D_

_x000D_

_x000D_

Quedo atento a comentarios.

solución

Para enviar variables del controlador a la vista tienes estas opciones:

MÉTODO COMPACT

public function index()
{
    $booksFounded = Book::all();
    //var_dump($booksFounded);
    //die();
    return view('dashboard', compact('booksFounded'));

}

Aclaraciones

  • La variable se pasa dentro del método compact().
  • La variable se pasa entre comillas.

MÉTODO WITH

public function index()
{
    $booksFounded = Book::all();
    //var_dump($booksFounded);
    //die();
    return view('dashboard')->with("booksFounded", $booksFounded);

}

Aclaraciones

  • Le pasas al método with entre comillas la key con la cual vas a identificar a la variable y posterior separado por una coma la variable.
Respondido por: user75901

Leave a Reply

Your email address will not be published. Required fields are marked *