0
我在Symfony 2.3.x上創建了一個KNPMenuBundle包,它不標記當前元素,所以我認爲這個問題與使用'uri'而不是'route'有關,因爲我在Symfony上和所有的事情是,當我使用的路線,從KnpMenuBundle:爲什麼使用'路線'而不是'uri'將<a>元素轉換爲<span>?
<li><a href="engineerings">Engineerings</a></li>
的元素的變化:
<li><span>Engineerings</span></li>
的<a>
元素
public function mainMenu(FactoryInterface $factory, array $options) {
$factory = new MenuFactory();
$menu = $factory->createItem('root');
$menu->setChildrenAttributes(array('id' => 'tabs', 'class' => 'fl'));
$menu->addChild('Cooperators', array('uri' => 'companies'));
$menu->addChild('Customers', array('uri' => 'clients'));
$menu->addChild('Engineerings', array('uri' => 'engineerings'));
$menu->addChild('Lines', array('uri' => 'lines'));
$menu->addChild('Priorities', array('uri' => 'priorities'));
$menu->addChild('Projects', array('uri' => 'projects'));
$menu->addChild('Statuses', array('uri' => 'statuses'));
$menu->addChild('Sites', array('uri' => 'sites'));
$menu->addChild('Reports', array('uri' => 'reports'));
$menu->addChild('Roles', array('uri' => 'roles'));
$menu->addChild('Users', array('uri' => 'users'));
return $menu;
}
<span>
元素
public function mainMenu(FactoryInterface $factory, array $options) {
$factory = new MenuFactory();
$menu = $factory->createItem('root');
$menu->setChildrenAttributes(array('id' => 'tabs', 'class' => 'fl'));
$menu->addChild('Cooperators', array('route' => 'companies'));
$menu->addChild('Customers', array('route' => 'clients'));
$menu->addChild('Engineerings', array('route' => 'engineerings'));
$menu->addChild('Lines', array('route' => 'lines'));
$menu->addChild('Priorities', array('route' => 'priorities'));
$menu->addChild('Projects', array('route' => 'projects'));
$menu->addChild('Statuses', array('route' => 'statuses'));
$menu->addChild('Sites', array('route' => 'sites'));
$menu->addChild('Reports', array('route' => 'reports'));
$menu->addChild('Roles', array('route' => 'roles'));
$menu->addChild('Users', array('route' => 'users'));
return $menu;
}
現在,爲什麼會發生這種情況?另外,我如何設置當前項目?我不能讓它顯示'當前'類。
大多數使用symfony的人都使用過「路由」,它似乎適用於他們。 KnpMenuBundle不是很聰明,因爲它不是單獨選擇當前項目。謝謝你的回答。此外,根據它顯示在這裏:https://github.com/KnpLabs/KnpMenuBundle/blob/1b07578738d3425c09cfbd153276382388994f46/Resources/doc/i18n.md它確實接受「路線」選項 – Splendonia
對不起。你當然是對的。有一個'route'選項。我會重寫我的答案。 – ferdynator
好了重寫了我的答案。問題在別的地方。 – ferdynator