У меня проблемы с Zend Framework 2 Router object. Я пытаюсь реализовать Zend\Paginator
в примере механизма маршрутизации быстрого запуска без успеха. Поясню:zend2 routing paginator и module
После выполнения я быстрый старт закончился с чем-то вроде этого:
'album' => array(
'type' => 'Segment',
'options' => array(
'route' => '/album[/:action][/:id]',
'constraints' => array(
'action' => '[a-z][a-z0-9\-]*',
'id' => '[0-9]+'
),
'defaults' => array(
'controller' => 'Album',
'action' => 'index'
)
)
)
Проблема возникает, когда я пытался реализовать Paginator на моей странице просмотра/индекса. Если мне нужен маршрутизатор, как /album[/:action][/:id][/:page]
, который не работает, потому что маршрутизатор назначает :page
var на :id
. Я удалил :id
раздел заканчивающегося что-то вроде /album[/:action][/:page]
и призыва в моем добавлении/редактирование действия
$matches = $this->getEvent()->getRouteMatch();
$id = $matches->getParam('page');
работает без проблем, но я люблю вещи держать мнемоник. Поэтому мой вопрос: возможно ли достичь этого, не создавая дублирующий роутер только для того, чтобы пагинатор выглядел так, как мне нравится? я делаю что-то неправильное?
проблема заключается в том, что вы указываете id и страница обе являются необязательными, и оба будут соответствовать целым числам. это означает, что регулярное выражение не будет знать, что оно соответствует, оно недостаточно уникально – Andrew