如何在每个页面的导航栏中显示数据?

br-dev:

在Symfony 5中,我想Categories在我的导航栏中为网站的每个页面显示实体实际上我在控制器的每个函数中都返回相同的数据,例如

return $this->render('post/index.html.twig', ['Categories' => $Categories]);

我想知道是否有更好的方法总是返回我的类别,而不总是返回每个函数中的数据并返回相同的数据?

维克多·魏斯(Victor Weiss):

如果您的导航栏在所有页面上都相同,则{% include 'base/navbar.html.twig' %}可以包括一个Controller,该Controller将从数据库中提取Categories并呈现该模板,而不是像这样包含导航栏模板。在此处进行了说明:https : //symfony.com/doc/current/templates.html#embedding-controllers

在您的模板中:

{{ render(controller('App\\Controller\\BaseController::navbar')) }}

在BaseController中

public function navbar(CategoriesRepository $categoriesRepository) {
    return $this->render('base/navbar.html.twig', [
        'categories' => $categoriesRepository->findAll(),
    ]);
}

您不需要添加注释,因为没有路线。它只是一个返回html的函数。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

如何显示隐藏在导航栏后面的弹出窗口

当前页面的导航栏突出显示

React Router DOM —如何在每个页面上包含一个导航栏?

如何在React Native中隐藏和显示导航栏?

如何在所有页面的导航栏中添加图标?

如何在另一个页面的底部导航栏中导航?

如何在特定页面上不显示导航栏?

如何在Bootstrap导航栏中居中显示文本

如何在模板中显示导航页面的路径结构(站点地图)

如何在html / css中使导航栏与页面的其余部分没有空间?

如何在不刷新页面的情况下正确显示存储在外部模型中的数据?

更改网站中每个页面的导航栏的背景颜色和文本颜色

如何使导航栏与页面的其余部分重叠?

如何在导航栏中更改页面标题

如何在带有页面的QML中显示模型?

如何在导航栏中显示“编辑”按钮

如何在wordpress的首页中显示页面的摘要

如何在管理页面的数据库中的zii.widgets.grid.CGridView中显示多个学生姓名?

如何在布局页面的导航中动态放置文本

如何在stimulesoft中显示数据,使每个组都位于一个页面中?

如何在导航栏应用程序中显示网页?

如何让导航栏突出显示您在 php 中的页面

如何在 Bootrap 导航栏中显示水平子菜单?

如何在没有导航页面的情况下更改状态栏颜色

如何在 Django Admin 的用户添加页面的导航栏中更改“添加用户”?

如何在 Angular 的每个页面中包含导航栏

如何从每个页面中的导航栏组件的按钮打开模态/对话框反应

如何在 Nextjs 中显示固定的导航栏?

如何在非页面的 SvelteKit 组件中获取数据