在某些地方,人们在模型层中使用静态变量。
public function getTransitions()
{
$transitions = array(
static::STATE_NEEDS_REVIEW => 'Needs Review',
static::STATE_NEEDS_REVISION => 'Needs Revision',
static::STATE_ARCHIVED => 'Archive'
);
// some code...
return $transitions;
}我有翻译自定义视图助手,这基本上是ZF2翻译器的包装器与一些额外的功能。我知道如何在视图层和控制器中使用它,如下所示:
$t = $this->getServiceLocator()->get('ViewHelperManager')->get('t');但是如何在模型层中使用我的视图帮助器?
发布于 2015-03-19 00:58:41
如果您需要访问模型中的服务定位器,您可以实现ServiceLocatorAwareInterface,如这里的问答中所述:
injecting ServiceLocator via ServiceLocatorAwareInterface doesnt work
但是,我建议在模型中使用视图帮助器可能不是正确的方法。也许您可以从ViewHelper中获取相关的逻辑,并将其移动到一个服务中,以便通过注入或仅在需要时创建模型类来使用该服务。然后视图帮助器可以使用相同的服务。
https://stackoverflow.com/questions/29124881
复制相似问题