Php 流程3-如何初始化和使用全局控制器?
我现在在flow3中有一些实体、reposetories和控制器,它们工作得很好。如果有人需要全局流体变量(例如,在默认布局中打印的用户名),他必须定义并使用全局控制器Php 流程3-如何初始化和使用全局控制器?,php,typo3,fluid,typo3-flow,Php,Typo3,Fluid,Typo3 Flow,我现在在flow3中有一些实体、reposetories和控制器,它们工作得很好。如果有人需要全局流体变量(例如,在默认布局中打印的用户名),他必须定义并使用全局控制器 如何创建和使用此类控制器?控制器是类,因此您可以扩展它们并创建抽象类 假设您在My.Relationships包中有LoveController。 您可以创建一些单独的基本包,即My.Life和AbstractLifeController内部(php:AbstractClass AbstractLifeController Ex
如何创建和使用此类控制器?控制器是类,因此您可以扩展它们并创建抽象类 假设您在
My.Relationships
包中有LoveController
。
您可以创建一些单独的基本包,即My.Life
和AbstractLifeController
内部(php:AbstractClass AbstractLifeController Extendes\TYPO3\Flow\Mvc\Controller\ActionController
)
现在有了initialize*
方法(其中*可能是Action、View、AnyAction等等)。在您的情况下,使用:protectedinitializeview(\TYPO3\Flow\Mvc\View\ViewInterface$View)
在这个Abstract控制器中,分配一些变量,即$View->assign('myName',$myName')代码>
然后,当您的LoveController扩展\My\Life\Controller\AbstractLifeController
时,该变量{myName}
将在流体中对其操作使用的模板可见
因此,与其为所有控制器扩展\TYPO3\Flow\Mvc\Controller\ActionController,不如扩展这个抽象的\My\Life\Controller\AbstractLifeController为什么需要一个全局控制器来显示用户名?你能提供进一步的细节吗?实际上,您的模型中将有一个字段users映射到users表。从那里你可以访问所有的用户和他们的名字。是的,这是正确的,但你还需要在每个控制器中获取用户。我不想对每个控制器都这么做。所以我需要一个经常被呼叫的控制器。我的错!没有看到流标签。删除了我的答案。