2014-10-01 6 views
1

Я пытаюсь перенаправить страницу, если условие истинно. Я не хочу использовать core php function header(), потому что я использую zend так, я пробовал много вещей, но напрасно.Пытается перенаправить страницу с помощью Zend FW.

Вот мой код.

$viewer = Engine_Api::_()->user()->getViewer(); 
    $table = Engine_Api::_()->getItemTable('sitebusiness_business'); 
    $select = $table->select()->where('owner_id = ?' , $viewer->getIdentity()); 
    $result = $table->fetchAll($select); 
    if(count($result) == 0){ 
     $url = Zend_Controller_Front::getInstance()->getRouter()->assemble(array('action' => 'package'), 'sitebusiness_general', true); // url is /mysite/businessitems/package 
     $this->_redirect($url); //Not Working ---- 
     $this->_helper->redirector($url); //Not Working ---- 
     $this->_redirector->gotoSimple($url); //Not Working ---- 
     $this->_redirector->gotoUrl($url); //Not Working ---- 
    } 

Everytime я получаю сообщение: Фатальная ошибка: Вызов функции члена редиректор() [независимо от названия функция] на не-объект.

Заранее спасибо.

ответ

2

вы можете использовать следующие один для перенаправления в zf2

$this->redirect()->toRoute('routename'); 

Generaly имени маршрут имя функции в контроллере.

как addEmployeeAction(), editEmployeeAction() ...

который маршруты, определенные в module.config.php

'zfcadmin' => array(
       'type' => 'segment', 
       'options' => array(
        'route' => '/admin', 
        'defaults' => array(
         'controller' => 'ZfcAdmin\Controller\AdminController', 
         'action'  => 'index', 
        ), 
       ), 
       'may_terminate' => true, 
Смежные вопросы