将参数传递给所有视图

2023-12-01

我想在我的所有 Twig 视图(全部从通用 Twig 布局扩展)上显示用户名/上次连接日期/时间和一些其他信息。

如何实现这一目标,而不必将这些参数从每个控制器显式传递到每个视图?

我是否必须创建一个 Twig 扩展,或者调用一个控制器/操作来从布局中检索用户名/连接/其他信息render?

如果可能的话,我想要一个更简单的解决方案。


最简单的解决方案是嵌入式控制器从您的模板/布局。但请注意,子请求的成本很高,并且会显着影响性能。如果在某个时候您会注意到应用程序的开发版本慢得要命,那么原因可能是每个请求上都有多个子请求。

下一个解决方案是树枝延伸。大多数情况下你会想要功能。你可以这样称呼它:

{{ user_info(user) }}

我首先从嵌入控制器开始,但我的开发版本达到了网站上大多数页面在 30 秒内超时的程度。我一开始并不知道原因,但当我发现它后,我用 Twig 扩展替换了所有子请求。此后性能恢复正常。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将参数传递给所有视图 的相关文章

  • 如何将 Ajax 与 Symfony2 集成 [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我正在寻找有关 symfony2 中
  • FOSUserBundle 和 ACL 业务角色

    这个周末我开始学习 Symfony 2 我没有遇到任何问题 因为我认为该框架有详细记录 我正在使用 FOSUserBundle 包进行 ACL 我想知道是否可以使其类似于 Yii 框架 bizRule return Yii app gt u
  • Symfony Finder 忽略以点开头的文件

    我使用 Finder 发送假脱机电子邮件 但自动名称生成器会在文件名中添加点 有时它们会出现在文件的开头 似乎查找器无法获取具有该名称的文件 那么这些文件是隐藏的 有人经历过这种行为吗 有什么建议如何使用查找器来查找隐藏文件吗 Thx 刚刚
  • Laravel 4 路由 404 错误

    当我路由到某个页面时 我无法让 Laravel 找到该页面 我的路线已设置并被识别 当我使用 URL route account create 创建链接时 laravel 会成功地将其解析为 account create 以了解我希望链接转
  • 使用自定义服务的编译器传递加载 Symfony 的参数

    根据这个问题如何从数据库加载 Symfony 的配置参数 Doctrine https stackoverflow com q 28713495 8945214我有一个类似的问题 我需要动态设置参数 并且我想提供来自另一个自定义服务的数据
  • 无法覆盖 Symfony2 GeneratorBundle 中的标准骨架视图

    我无法覆盖 GeneratorBundle 的骨架视图 我首先尝试在 app Resources SensioGeneratorBundle sculpt crud views index html twig 中添加我的视图 它不起作用 所
  • 自定义 Facebook FOSFacebookBundle 登录按钮

    有人知道如何自定义 更改 FosFacebook 登录按钮的图像吗 facebook login button autologoutlink true 并在整页 Facebook 登录上重定向 而不是在弹出窗口上重定向 这使用了 twig
  • 使用 Timber 插件时,wordpress 简单的短代码不会呈现

    我最近接管了一个使用 Timber 我不熟悉 的 WordPress 网站的开发 我正在尝试使用新的插件和随附的短代码 但这当然不起作用 我已经研究这个问题几个小时了 似乎没有一个简单的答案 为了使用像这样的简单短代码 sp faq类别 7
  • Apache + Symfony2 + HTTPS + Node.js + Socket.io:socket.emit 未触发

    我花了几个小时来解决这个问题 但毫无结果 编辑 找到解决方案 参见我的答案 项目背景 我正在构建一个项目Symfony2 这需要一个用于上传大文件的模块 我选择了Node js and Socket IO 我必须从头开始学习 所以我可能会错
  • 使用 Symfony 4 命令加载不同的 .env 文件

    env运行 Symfony 4 命令时会解析文件 如果 dotenv 可用 这在开发时工作正常 而且 我想测试我的代码 所以另一个环境 因此我需要加载另一个 env file 我喜欢 Docker 运行容器的方式 docker run e
  • 通过CompilerPass注册自定义AttributeBag

    我正在尝试通过将自定义 AttributBags 集成到会话中来整理我的会话变量 在 Symfony 查看相关问题 如何向 symfony 会话添加额外的包 https stackoverflow com questions 4472361
  • 如何在 jquery 中创建“可重用”函数?

    我有这段代码效果很好 function displayVals var phonevals bphonesel val bphone val phonevals select change displayVals displayVals 我
  • 有没有一种简单的方法可以在 Symfony 中获取 ServerName?

    我一直在寻找一种简单的方法来获取 Symfony 在 Symfony 中运行的机器的 ServerName 以便我的应用程序在具有不同 ServerName 的主机上使用时进行调整 但我找不到 我在 app yml 中创建了一个变量并获取它
  • 如何使用变量处理树枝文件中的翻译?

    我有一个 twig 文件和一个 yml 在其中定义翻译变量 e g YML 文件 variable for translation Disponible para t Twig 文件的内容 h2 Hola Follow variableNa
  • 如何在 Symfony2 WebTestCase 中重定向后获取当前 URL?

    使用 Symfony2 WebTestCase 我进行了以下测试 client gt request GET this gt assertTrue client gt getResponse instanceof RedirectRespo
  • 覆盖控制器 Symfony 3.4/4.0

    我目前正在尝试覆盖 FOSUserBundle 中的控制器 在新的文档中 https symfony com doc 3 4 bundles override html https symfony com doc 3 4 bundles o
  • Symfony 4:添加 Twig_Extension_StringLoader

    在我的 Symfony 4 项目中 我有一个包含 HTML 的变量 我尝试使用 Twig 显示该变量 我想使用template from string 功能但我必须添加Twig Extension StringLoader到 Twig 环境
  • 类别树的路由

    我正在使用Tree http www gediminasm org article tree nestedset behavior extension for doctrine 2类别树的学说扩展并希望有如下路线 cat subcat1 s
  • 防止在 Razor 页面中自动传递 URL 参数

    我正在为 Web 应用程序使用 NET Core 2 Razor Pages 格式 它允许您使用顶部的简单指令定义如何将 URL 映射到变量名称 page personId int 例如 上面的内容将映射 URL Person Index
  • vagrant box速度慢,如何改进?

    我们已经为我们的开发盒构建了一个 vagrant box 但我们面临着一些延迟问题 Issues Assetic 手表速度很慢 app dev php 中的整体应用程序访问速度很慢 在 vagrant box 的共享文件夹中使用 查找 命令

随机推荐