Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

Problema con View Composer

Estas en el tema de Problema con View Composer en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola amigos, necesito mostrar un menu desde base de datos en todas las vistas por este motivo voy a utilizar Un View Composer segui el ...
  #1 (permalink)  
Antiguo 30/01/2017, 12:55
 
Fecha de Ingreso: septiembre-2010
Mensajes: 1.853
Antigüedad: 13 años, 7 meses
Puntos: 6
Problema con View Composer

Hola amigos, necesito mostrar un menu desde base de datos en todas las vistas por este motivo voy a utilizar Un View Composer segui el manual https://styde.net/uso-de-view-composer-laravel-5/ pero obtengo el error:

Undefined variable: count (View: /var/www/html/estacionesN/resources/views/home.blade.php)

hice lo siguiente:
1. ejecute php artisan make:provider ComposerServiceProvider
2. En config/app adicione App\Providers\ComposerServiceProvider::class
3. En app/Providers/ComposerServiceProvider.php
Código PHP:
Ver original
  1. namespace App\Providers;
  2.  
  3. use Illuminate\Support\ServiceProvider;
  4.  
  5. class ComposerServiceProvider extends ServiceProvider
  6. {
  7.     /**
  8.      * Bootstrap the application services.
  9.      *
  10.      * @return void
  11.      */
  12.     public function boot()
  13.     {
  14.         View::composer('home', 'App\Http\ViewComposers\ProfileComposer');
  15.  
  16.  
  17.      }  
  18.     /**
  19.      * Register the application services.
  20.      *
  21.      * @return void
  22.      */
  23.     public function register()
  24.     {
  25.         //
  26.     }
  27. }

4. en app/Http/ViewComposers/ProfileComposer.php
Código PHP:
Ver original
  1. namespace App\Http\ViewComposers;
  2.  
  3. use Illuminate\Contracts\View\View;
  4. use App\User;
  5.  
  6. class ProfileComposer {
  7.     /**
  8.      * Bind data to the view.
  9.      *
  10.      * @param  View  $view
  11.      * @return void
  12.      */
  13. public function compose(View $view)
  14.     {
  15.        $users = User::all();
  16.         $view->with('count', $users->count());
  17.     }
  18.  
  19. }


5. en la vista home.blade.php
Código PHP:
Ver original
  1. {{ $count }}


obtengo el error:

Undefined variable: count (View: /var/www/html/estacionesN/resources/views/home.blade.php)

que estoy haciendo mal?
  #2 (permalink)  
Antiguo 31/01/2017, 12:39
 
Fecha de Ingreso: julio-2014
Mensajes: 334
Antigüedad: 9 años, 9 meses
Puntos: 30
Respuesta: Problema con View Composer

prueba un simple cambio:

en vez de esto
Código PHP:
$view->with('count'$users->count()); 
prueba con esto
Código PHP:
$view->with(['count' => $users->count()]); 
Si eso no te va, podrísa mostrarnos el códio donde haces la llamada a home.blade.php, pues normalmente se establecen las variables en el mismo lugar donde se llama a la vista.

¿Estás utilizando el modulo de vistas de laravel sin usar laravel? Es decir, como un plugin de laravel para tu web?

Etiquetas: laravel
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:31.