无法生成路由value_user_create

时间:2013-08-19 16:28:14

标签: php symfony sonata-admin sonata-user-bundle

我的Symfony2-Project与SonataAdmin-和UserBundle有问题。 我根据Admin-和UserBundle-Documentations安装并配置了所有内容,并尝试让它运行,这似乎很好。所以你可以说两个捆绑包都是开箱即用的。 当我尝试从Admin-Dashboard访问用户列表(默认路径 / admin / sonata / user / user / list )时,我得到了这个:

An exception has been thrown during the rendering of a template
("Unable to generate a URL for the named route "value_user_create" as
such route does not exist.") in
"SonataAdminBundle:CRUD:list.html.twig".

如前所述,我既没有更改Sonata提供的默认路由信息,也没有覆盖Controller或其他任何内容。 根据symfony控制台router:debug,路由admin_sonata_user_user_create存在于其他CRUD路由中(指向/admin/sonata/user/user/create

所以对我而言,似乎路由名value_user_create中的值不会被admin_sonata_user - 前缀替换,但这只是一个想法,我无法证明它。无论如何我找不到任何地方来解决这个问题,所以每个帮助和提示在这里都可能会有所帮助。

最好的问候和提前感谢

编辑: 我的奏鸣曲用户服务看起来像这样:

sonata_user:
    security_acl: false
    class:
        user:   Application\Sonata\UserBundle\Entity\User
        group:  Application\Sonata\UserBundle\Entity\Group
    admin:
        user:
            class:          Repertorium\AdminBundle\Entity\UserAdmin
            controller:     SonataAdminBundle:CRUD
            translation:    SonataUserBundle
        group:
            class:          Sonata\UserBundle\Admin\Entity\GroupAdmin
            controller:     SonataAdminBundle:CRUD
            translation:    SonataUserBundle

在这里第一次评论后,我创建了自己的UserAdmin-Class,它派生自默认的Sonata \ UserBundle \ Admin \ Entity \ UserAdmin-Class,除了它将baseRouteName设置为null,如上所述。 正如配置说我正在使用默认的AdminBundle-CRUD-Controller。在这种情况下没有覆盖或任何东西。 清除缓存,再次尝试 - 相同的错误消息。还尝试将其设置为Literal,例如“user_admin”,但同样没有效果。 奇怪的是,所有其他路线似乎都很好;我可以打开创建用户页面,也可以创建组和列表组页面。

1 个答案:

答案 0 :(得分:1)

您的服务定义如何?你使用默认的CRUD控制器吗?此外,您似乎在Admin类中使用'value'而不是null覆盖Admin :: $ baseRouteName变量。尝试将其设置为:

class UserAdmin extends Admin {

    public $baseRouteName = null;

    // ...
}

它有什么改变吗?不要忘记尝试清除缓存。