Laravel 5 obtenir le nom de la vue
J'ai du mal à obtenir le nom de la vue en L5. Tout comme dans WP, je voudrais ajouter une page spécifique nom de (nom de la vue) pour le style, comme:
<!-- View name: login.blade.php !-->
<div id="page" class="page-login">
<h1>Inloggen</h1>
</div>
<!-- View name: register.blade.php !-->
<div id="page" class="page-register">
<h1>Registreren</h1>
</div>
Dans L4, il peut être fait à l'aide de compositeur à part le var à travers tous les points de vue (Comment puis-je obtenir de l'actuel nom de la vue à l'intérieur d'un maître layour dans Laravel 4?). Mais je n'ai besoin que le nom de la vue une fois pour mon maître de mise en page.
Faire:
<div id="page" class="page-{{ view()->getName() }}">
Me donne l'erreur suivante Call to undefined method Illuminate\View\Factory::getName()
.
Merci d'avance!
- Votre seule option est une vue compositeur. Quel est le problème avec ça?
- Ok, je pensais qu'il y avait une autre façon, mais je suis très bien avec l'aide d'une vue compositeur. Merci.
Vous devez vous connecter pour publier un commentaire.
Mise à jour de votre AppServiceProvider par l'ajout d'une vue compositeur de la méthode de démarrage et en utilisant '*' pour la partager avec tous les points de vue:
{{$view_name}}
sera mis à la disposition de votre lame de modèles.Basé sur @devise réponse que j'ai été en mesure d'obtenir la lame de fichier en un clin d'oeil.
find()
est une fonction dans leViewFileFinder
classe pour chercher les points de vue , des chemins et des espaces de noms.ensuite exploser le retourner pour obtenir le nom de fichier.
last()
est une fonction d'assistance dans laravel.