Si Laravel fonctionne via la couche de classe parent, les paramètres sont transmis à la mise en page Blade.
阿神
阿神 2017-05-16 16:56:01
0
3
426

Pour les variables utilisées dans la mise en page, si les paramètres sont transmis depuis le contrôleur, l'opération doit être répétée pour chaque vue !
Comment résoudre le problème de la transmission du résultat à la mise en page après un calcul pour que toutes les vues soient utilisées (je ne veux pas que le code métier apparaisse dans la vue Mise en page).

par exemple :
1. Gestion des autorisations, définissez différents menus en fonction des différents utilisateurs !
2. Numéros dynamiques dans le menu, tels que [Ordre d'aujourd'hui (50)], ce 50 exige que tous les contrôleurs obtiennent les données puis les transmettent à la vue !

阿神
阿神

闭关修行中......

répondre à tous(3)
迷茫

Il existe deux façons de le résoudre :

Premier : TraditionnelViewComposerProvider

class NavViewComposerProvider extends ServiceProvider {

public function boot(){
    view()->composer('partials.nav', function ($view) {

        $view->with('userAtLayout', User::find(Auth::user()->id));
        //根据自己的需求改呗

    });
  }
}

Deuxièmement, les nouvelles fonctionnalités de Laravel 5.1 @inject :

@inject('var','Class')
// var 变量名 Class绑定的类名

Par exemple, vous pouvez faire ceci :

@inject('nav','App\SiteNav')

Interrogez simplement les données dans SiteNav.

Digression : Lisez attentivement la documentation et vous pourrez résoudre 80% des problèmes que vous rencontrez.

Joyeux hacking

巴扎黑
phpView::share('name', $var)
PHPzhong

Les méthodes mentionnées ci-dessus ne sont pas fiables et vous ne pouvez pas obtenir les paramètres d'URL actuels et les transmettre à votre fonction

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal