Zend Framework - проблема с маршрутами Regex и Url View Helper - PullRequest
0 голосов
/ 06 августа 2010

У меня есть эта настройка маршрута в одном из моих файлов начальной загрузки ...

$route = new Zend_Controller_Router_Route_Regex(
    'user/(\d+)',
    array(
        'module'        => 'user',
        'controller'    => 'view',
        'action'        => 'index'
    ),
    array(
        1 => 'id'
    ),
    'user/%d'
);
$router->addRoute('user', $route);  

Затем я пытаюсь использовать помощник URL-адреса представления для создания href, но я получаю сообщение об ошибке «Невозможно собрать.Слишком мало аргументов?'.

Это код моего помощника, который генерирует ссылку:

$this->view->url(array('controller'=>'user', 'action' => $userID), 'user');  

Если я уберу часть URL пользователя, то это не ошибка, но ссылка не всегда отображаетсяправильно.
Я подумал, что это имя и должно относиться к имени, которое я ввел в addRoute.

Я играл с другими настройками, но продолжаю получать сообщение об ошибке.Кто-нибудь может увидеть, где я иду не так?

Спасибо,
Мартин

1 Ответ

2 голосов
/ 06 августа 2010

попробуйте это

$this->view->url(array('id' => $userId), 'user', true); 

не нужно снова предоставлять контроллер / действие, как это определено в маршруте (второй параметр), третий параметр (true) сбросит параметры из текущего запроса.1004 *

...