Symfony2 哪个更好:render Controller 还是 include Template?
Which is better in Symfony2: render Controller or include Template?
我用 Symfony2 开发大学网站。此外,我几乎是 Symfony 的新手。
索引页面由几个块组成:新闻、事件、照片等。所有对象都是从网络服务中获取的,因此没有直接使用数据库。
不知道哪个更好:
- 获取 DefaultController:indexAction 中的所有新闻、照片、.. 对象
并将它们作为参数
传递给 index.html.twig
- 在 index.html.twig 中调用 render(controller(News:block))。和
NewsController 依次获取对象并渲染
news_block.html.twig.
- 还有别的方法吗?..其实我用的是第二种方法,但我觉得不太好。
请多多指教
这个问题不可能有完美的过时答案。这两种方式都是 Symfony 中同样标准的编码方式。它是一种基于决策的方法,非常重要。
获取 DefaultController:indexAction 中的所有新闻、照片、.. 对象并将它们作为参数传递给 index.html.twig -> 当数据是 displaying/loading 时page比较少或者属于一个单module/feature。这样你就有了一个简单的过程——路由 -> 控制器 -> 树枝。简单但甜蜜的编码方式。
在 index.html.twig 中调用 render(controller(News:block))。而 NewsController 依次获取对象并渲染 news_block.html.twig。 -> 当您的 twig/page 渲染大量组件或需要在一次操作中完成大量繁重工作时,请使用此方法。这将对您维护代码有很大帮助,因为您的树枝的每个部分都使用单独的控制器单独呈现。另外,这也会稍微提高网站的用户体验性能,因为树枝最初是用最少的信息渲染的,然后每个单独的组件使用自己的控制器单独渲染自己。
我用 Symfony2 开发大学网站。此外,我几乎是 Symfony 的新手。
索引页面由几个块组成:新闻、事件、照片等。所有对象都是从网络服务中获取的,因此没有直接使用数据库。
不知道哪个更好:
- 获取 DefaultController:indexAction 中的所有新闻、照片、.. 对象 并将它们作为参数 传递给 index.html.twig
- 在 index.html.twig 中调用 render(controller(News:block))。和 NewsController 依次获取对象并渲染 news_block.html.twig.
- 还有别的方法吗?..其实我用的是第二种方法,但我觉得不太好。
请多多指教
这个问题不可能有完美的过时答案。这两种方式都是 Symfony 中同样标准的编码方式。它是一种基于决策的方法,非常重要。
获取 DefaultController:indexAction 中的所有新闻、照片、.. 对象并将它们作为参数传递给 index.html.twig -> 当数据是 displaying/loading 时page比较少或者属于一个单module/feature。这样你就有了一个简单的过程——路由 -> 控制器 -> 树枝。简单但甜蜜的编码方式。
在 index.html.twig 中调用 render(controller(News:block))。而 NewsController 依次获取对象并渲染 news_block.html.twig。 -> 当您的 twig/page 渲染大量组件或需要在一次操作中完成大量繁重工作时,请使用此方法。这将对您维护代码有很大帮助,因为您的树枝的每个部分都使用单独的控制器单独呈现。另外,这也会稍微提高网站的用户体验性能,因为树枝最初是用最少的信息渲染的,然后每个单独的组件使用自己的控制器单独渲染自己。