gpt4 book ai didi

Symfony2 - 有没有办法实现像 jsf 片段这样的东西?

转载 作者:行者123 更新时间:2023-12-02 15:40:20 24 4
gpt4 key购买 nike

我的意思是,一些代码具有与特定 Twig 模板相关的自己的逻辑以及另一个页面内 Controller 中的相关逻辑。

类似于包含用户特定数据的栏。姓名、州、电话号码和一些服务以及这个逻辑包括我想将其包含到我决定的页面中。只是重复使用它。

最佳答案

您可以渲染一个从 View 返回数据的 Controller ,或者创建一个获取数据并将其公开给 twig 的服务。

1。 Controller 示例

Controller

class UserDataController extends Controller
{
public function userDataAction()
{
$userData = // fetch user data....

return $this->render('user_data_fragment_template.html.twig', ['user_data' => $userData]);
}
}

您想要显示该片段的某个模板

<div>{{ render(controller('YourBundle:UserDataController:userData')) }}</div>

2。服务示例

数据提供商服务

class UserDataProvider
{
public function __construct(...)
{
....
}

public function getUserData()
{
$userData = // fetch user data...

return $userData;
}
}

config.yml

// ...

twig:
globals:
user_data_provider: @your_user_data_provider_service_name

您想要显示该片段的某个模板

<div>{% include 'user_data_fragment_template.html.twig' with { userData: user_data_provider.userData } only %}</div>

关于Symfony2 - 有没有办法实现像 jsf 片段这样的东西?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26375657/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com