zend frmawork 1 在插件中设置视图的变量值
zend frmawork 1 set variable value of view in plugin
控制器文件
class AController extends Model_BaseController
{
public function getCityAction()
{
$this->view->city = 'Ada';
}
}
插件文件
class Plugin_ConvertObjectPublic extends Zend_Controller_Plugin_Abstract
{
public function postDispatch($request)
{
$layout = Zend_Layout::getMvcInstance();
$view = $layout->getView();
$view->newCity = strtoupper($view->city);
}
}
newCity 变量传递给 NULL 值?
如何更改插件中的视图变量?
感谢您的帮助....
如果我没记错的话,视图已经在方法 postDispatch()
插件中形成了。
您可以在 AController
控制器中添加此方法。
显然,您的 AController
控制器已经扩展了另一个控制器 Model_BaseController
。
所以你可以在你的控制器中添加这个方法 Model_BaseController
像这样:
class Model_BaseController extends Zend_Controller_Action {
...
public function postDispatch()
{
$layout = Zend_Layout::getMvcInstance();
$view = $layout->getView();
$view->city = strtoupper($view->city);
}
}
如果您确实需要一些控制器,您可以像这样创建一个中间控制器:
class BController extends Model_BaseController {
public function postDispatch()
{
$layout = Zend_Layout::getMvcInstance();
$view = $layout->getView();
$view->city = strtoupper($view->city);
}
}
和
class AController extends BController
{
...
}
控制器文件
class AController extends Model_BaseController
{
public function getCityAction()
{
$this->view->city = 'Ada';
}
}
插件文件
class Plugin_ConvertObjectPublic extends Zend_Controller_Plugin_Abstract
{
public function postDispatch($request)
{
$layout = Zend_Layout::getMvcInstance();
$view = $layout->getView();
$view->newCity = strtoupper($view->city);
}
}
newCity 变量传递给 NULL 值? 如何更改插件中的视图变量? 感谢您的帮助....
如果我没记错的话,视图已经在方法 postDispatch()
插件中形成了。
您可以在 AController
控制器中添加此方法。
显然,您的 AController
控制器已经扩展了另一个控制器 Model_BaseController
。
所以你可以在你的控制器中添加这个方法 Model_BaseController
像这样:
class Model_BaseController extends Zend_Controller_Action {
...
public function postDispatch()
{
$layout = Zend_Layout::getMvcInstance();
$view = $layout->getView();
$view->city = strtoupper($view->city);
}
}
如果您确实需要一些控制器,您可以像这样创建一个中间控制器:
class BController extends Model_BaseController {
public function postDispatch()
{
$layout = Zend_Layout::getMvcInstance();
$view = $layout->getView();
$view->city = strtoupper($view->city);
}
}
和
class AController extends BController
{
...
}