php - 创建用户后无法生成 "page_slug"的 URL

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

我有一个奇怪的问题。我安装并配置了 SonataUserBundle 以与 FosUserBundle 和 SonataAdminBundle 一起使用。安装没有任何问题,一切似乎都工作正常,除了当我通过 sonataUserBundle 网页创建另一个用户时。一旦我创建了用户(并且是在我查看数据库时创建的),我就再也看不到用户列表了。当我单击返回用户列表时,出现以下错误:

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

如果我从数据库中删除用户,只剩下一个用户,那么我就可以访问用户列表。

我完全不知道如何进一步解决此问题...

编辑1:

感谢 Marko Jurinčič,我发现我的配置中有这些行

sonata_user:

    impersonating:
        route:                page_slug
        parameters:           { path: / }

但是,这看起来不像一条路线,而且实际上,没有任何名为 page_slug 的路线。它应该有一个路由名称“page_slug”吗?

最佳答案

我也遇到同样的问题。我所做的是在我的项目中搜索page_slug,我发现page_slug在我的sonata_user下的config.yml中使用

impersonating:
  route: page_slug
  parameters: { path: / }  

我仍然需要看看这是否会影响其他东西(我对 Symfony 有点陌生,所以我不能 100% 确定这不会在其他地方使用:))

评论(或只是删除)这解决了我的问题,现在我可以在管理仪表板中看到用户列表。

希望有帮助。

编辑: 我找到了答案。在此链接中解释了模仿的含义: https://github.com/sonata-project/SonataUserBundle/issues/174

关于php - 创建用户后无法生成 "page_slug"的 URL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19353561/

相关文章:

javascript - 如何创建一个从单独的文本文件获取帖子的网络博客?

php - 如何使用 Symfony2 创建实体

forms - Symfony2 FOSUserBundle – 验证登录时的 "user active"标志

Symfony 2 FOSUserBundle 与产品表的关系

php - 使用内置 PHP Web 服务器设置环境变量

javascript - 提交表单而不重新加载页面

php - 在 foreach() 表达式中,值是在键之前还是之后定义的?

php - 如何在Sonata中搜索json列?

mysql - Doctrine 更新不断将我的整数更改为 varchar

mysql - 两张表,两种关系