如何在Symfony中为不同的模块设置不同的模板布局?
我有一个银行应用程序,包括登录屏幕和成员部分.因此,当用户访问我的网站时,他将看到一个登录屏幕.登录后,他将被重定向到会员部分,他可以满足银行的需求.
那么,如何为登录屏幕和成员部分内的页面设置不同的布局?Symfony似乎frontend/templates/layout.php
用作所有页面的模板.是否可以定义不同的布局?
是的,您可以为每个视图定义单独的布局(或完全禁用布局).为此,您必须在模块的/ config目录中创建(或编辑,如果已经拥有)view.yml文件.您可以分别定义用于模块的所有视图或每个视图的布局.例如:
#in /apps/my_app/modules/my_module/config/view.yml #this will apply custom_layout to all views of the module all: layout: custom_layout #this will apply login_layout to the loginSuccess view loginSuccess: layout: login_layout #disable layout for this view homeSuccess: has_layout: false
在所有情况下,布局都是应用程序的/ templates目录中的文件(附加.php).如果未在模块的视图配置文件中定义任何布局指令,则将使用默认布局.