我想在侧边栏中生成一个动态菜单并与 Laravel 5.1 中的所有视图共享。
like:
- Marks Module
- Langosh Topic
- Content 1
- Content 2
-Nitzsche Topic
- Content 3
- Rolfson Module
尽管所有这些元素都属于另一个称为course我可以在顶部菜单中选择(用户可以有超过 1 门课程)。
因此,每次我访问课程、模块、主题或内容时,他们都需要告诉侧边栏菜单哪个课程是所有这些孩子的父亲(或祖父)才能生成菜单。
在 AppServiceProvider 中,我有视图编辑器,一切都工作正常,但我正在使用会话来获取课程 ID,但我不喜欢这样的想法。
我如何将 $course 传递给服务提供商,或者有其他更好的方法吗?
实际上,在这种情况下,您不应该尝试将变量传递给服务提供者。如果需要的话,可以使用 Laravel 来完成容器 http://laravel.com/docs/5.1/container,因为它是全局的,并且是在应用程序启动时初始化的。
但由于您只是构建菜单,我建议将菜单构建委托给特定的类。在控制器中创建此类的实例并将其传递给视图。调用它的方法,迭代它的属性来获取菜单结构。
如果您有各种应用程序部分提供有关此侧菜单的信息,您可以使用events http://laravel.com/docs/5.1/events将菜单片段收集在一起。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)