Ho una domanda riguardante il rendering del pacchetto KnpMenu per Symfony2. Da quello che ho letto, dovrebbe esserci una classe "corrente" nella voce rotta corrispondente. Ho letto la documentazione di Knp e stanno dicendo qualcosa su RouteVoter ma non riesco a farlo funzionare. Qualche idea?Pacchetto menu Knp Elemento corrente Symfony 2
Generatore di codice:
<?php
// src/Acme/DemoBundle/Menu/Builder.php
namespace Acme\DemoBundle\Menu;
use Knp\Menu\FactoryInterface;
use Symfony\Component\DependencyInjection\ContainerAware;
class Builder extends ContainerAware
{
public function mainMenu(FactoryInterface $factory, array $options)
{
$menu = $factory->createItem('root');
$menu->addChild('Home', array('route' => 'index'));
$menu->addChild('About Me', array('route' => 'products'));
return $menu;
}
}
Grazie per la soluzione. Ho cercato qualcosa di simile. Spero che un giorno il KnpMenuBundle 2.x sia stabile e saremo in grado di utilizzare gli elettori. –
Seguendo la guida di KnpMenuBundle per l'utilizzo del menu come servizio, il contenitore non è più necessario. È possibile ottenere la richiesta estendendo il servizio all'ambito della richiesta. –
Vale la pena ricordare che questa soluzione non riesce in alcuni casi. Ad esempio, quando si utilizza l'impaginazione. –