Symfony 如何为目录项创建动态路由器

Symfony 如何为目录项创建动态路由器,symfony,Symfony,我正试图与Symfony2合作,但有一个问题。 目前我正在尝试创建目录包,一切似乎都正常,但我不想为每个产品创建菜单项。在/en/catalog/*菜单项中按项目slug title访问products DynamicCali将非常棒。如何实现这一点?最快/最简单的方法是将您的产品制作成一个页面,该页面可以定义为目录的子页面。KunstmaanNodeBundle将处理蛞蝓 在Catalog类中(我假设它扩展了AbstractPage),重写getPossibleChildTypes方法: pu

我正试图与Symfony2合作,但有一个问题。
目前我正在尝试创建目录包,一切似乎都正常,但我不想为每个产品创建菜单项。在/en/catalog/*菜单项中按项目slug title访问products DynamicCali将非常棒。如何实现这一点?

最快/最简单的方法是将您的产品制作成一个页面,该页面可以定义为目录的子页面。KunstmaanNodeBundle将处理蛞蝓

在Catalog类中(我假设它扩展了AbstractPage),重写getPossibleChildTypes方法:

public function getPossibleChildTypes()
{
    return array (
        array(
            'name' => 'Product',
            'class'=> "Acme\CatalogBundle\Entity\Product"
        )
    );
}
这样,您就可以在目录页面下创建产品作为子页面。然后,您只需要在目录页面的细枝模板中获取目录的子目录


缺点是,每个产品本身就是一个页面(具有版本控制),而不是一个简单的实体

最快/最简单的方法是将您的产品制作成一个页面,该页面可以定义为目录的子页面。KunstmaanNodeBundle将处理蛞蝓

在Catalog类中(我假设它扩展了AbstractPage),重写getPossibleChildTypes方法:

public function getPossibleChildTypes()
{
    return array (
        array(
            'name' => 'Product',
            'class'=> "Acme\CatalogBundle\Entity\Product"
        )
    );
}
这样,您就可以在目录页面下创建产品作为子页面。然后,您只需要在目录页面的细枝模板中获取目录的子目录


缺点是,每个产品本身就是一个页面(具有版本控制),而不是一个简单的实体

我们也遇到了同样的问题。。。我们正试图通过创建目录项来解决这个问题,目录项也是菜单项,但其父项为null,这样它们就不会显示在树中。通过这样做,您仍然拥有版本控制系统和所有东西,但当您有许多目录项时,它不会减慢您的树。您可以使用AdminListBundle()在管理列表中的某个位置列出这些目录项


要将这些目录项链接到某个概览页面,我们使用chainrouter()。现在我们还没有一个明确的例子,但也许这可以让你开始?我们正在努力简化链式路由器的使用,但它仍在建设中:

我们遇到了同样的问题。。。我们正试图通过创建目录项来解决这个问题,目录项也是菜单项,但其父项为null,这样它们就不会显示在树中。通过这样做,您仍然拥有版本控制系统和所有东西,但当您有许多目录项时,它不会减慢您的树。您可以使用AdminListBundle()在管理列表中的某个位置列出这些目录项

要将这些目录项链接到某个概览页面,我们使用chainrouter()。现在我们还没有一个明确的例子,但也许这可以让你开始?我们正在努力简化chainrouter的使用,但它仍在建设中:

请看这里。第一个例子是关于你的问题。看看这里。第一个例子是关于你的问题。