我的应用程序的bradcrumbs配置有问题。
我从我的模块的报告配置开始:
'corso' => array(
'type' => 'segment',
'options' => array(
'route' => '/corso[/:action[/:id]]',
'constraints' => array( 'id' => '[0-9]*', 'action' => '[a-zA-Z][a-zA-Z0-9_-]+'),
'defaults' => array(
'controller' => 'corso/Controller/corso',
'action' => 'index',
),
),
),
控制器具有通常的方法索引,添加和编辑基本crud操作的操作
从配置文件中可以看出,添加和编辑操作不是子路由。
我想得到这种类型的bradcrumbs
家&GT; <索引动作控制器>添加/编辑操作
第一和第二个元素是链接。
这是面包屑的局部视图
<li><a href="<?php echo $this->url('home') ?>"><i class="iconfa-home"></i></a> <span class="separator"></span></li>
<?php $active = $container->findActive($navigation) ?>
<?php foreach($this->pages as $page): ?>
<?php /* @var $page \Zend\Navigation\Page\Mvc */ ?>
<?php if( ! $page->isActive()): ?>
<li>
<a href="<?php echo $page->getHref() ?>"><?php echo $page->getLabel() ?></a>
<span class="divider">/</span>
</li>
<?php else: ?>
<li class="active">
<?php if($container->getLinkLast()): ?><a href="<?php echo $page->getHref() ?>"><?php endif ?>
<?php echo $page->getLabel() ?>
<?php if($container->getLinkLast()): ?><a href="<?php echo $page->getHref() ?>"><?php endif ?>
</li>
<?php endif ?>
<?php endforeach ?>
我应该添加什么?
'navigation' => array(
'default' => array(
array(
'label' => 'corso',
'route' => 'corso',
'action' => 'index'
),
-----
),
),
感谢
编辑: 我使用zf2 helper for bredcrumbs
$this->navigation('navigation')->breadcrumbs()->setMinDepth(0)->setPartial(array('partial/breadcrumb', 'corso'));
答案 0 :(得分:0)
Zend \ Navigation Quick Start中有嵌套页面的示例:
http://framework.zend.com/manual/2.3/en/modules/zend.navigation.quick-start.html#quick-start
在你的情况下,它应该是这样的:
'navigation' => array(
'default' => array(
array(
'label' => 'corso',
'route' => 'corso',
'action' => 'index',
'pages' => array(
array(
'label' => 'add action ',
'route' => 'corso',
'action' => 'add',
),
array(
'label' => 'edit action ',
'route' => 'corso',
'action' => 'edit',
),
),
),
),
),