我有一个带有单个应用程序前端
的 symfony 1.4 项目。此应用程序具有单个模块 book
和单个操作 index
。
我有两个用于索引操作的模板:indexSuccess.mobile.php
和indexSuccess.html.php
。该操作将设置格式以便调用这些模板之一或另一个。
我想为这两个模板使用不同的布局:layout.mobile.php
和 layout.html.php
。 apps/frontend/modules/book/config/view.yml
文件用于指定要使用的布局以及布局中包含哪些 CSS 和 JavaScript 文件。
由于每个模块只能有一个 view.yml
文件,因此如何配置 view.yml
以便 indexSuccess.mobile.php
> 使用 layout.mobile.php
并加载适当的 CSS 和 JS 文件,而 indexSuccess.html.php
使用 layout.html.php
并加载其适当的 CSS 和 JS 文件?
我想使用布局,因为我最终会向此模块添加更多操作/模板。
最佳答案
您可以使用setLayout()
为实现这一目标而采取的行动方法。
UPDATE 对于 css 和 js 文件,您还可以使用操作(调用 sfWebResponse::addStylesheet()
和 sfWebResponse::addJavascript()
)。
如果您绝对想从 view.yml
执行所有这些操作,那么最适合您的方法是更改模板名称(在操作中返回不同的后缀)
关于templates - 同一 symfony 应用程序中不同 View 的不同布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6036372/