我有一个奇怪的问题。我安装并配置了 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/