开发我的网络应用程序时 EasyAdmin Bundle 问题

S P*_*U T 4 php symfony easyadmin

我正在开发一个 symfony 5 网络项目,我必须将其作为一个大学项目。我从管理部分开始,使用了 easycorp 的捆绑包 easyadmin。我首先把这些东西都做好了,但是随着项目的进展,我开始收到以下错误

EasyCorp\Bundle\EasyAdminBundle\Router\AdminUrlGenerator::setCrudId():参数 #1 ($crudId) 必须是字符串类型,给定 null,在 /Applications/MAMP/htdocs/appmusic/vendor/twig/twig/src/ 中调用Extension/CoreExtension.php 第 1541 行

我对它即将到来没有任何线索。开始另一个项目,又出现同样的问题。

如果你们能派上用场的话,我需要你们的帮助。非常感谢

小智 6

FastTrack 也面临同样的问题。

首先我删除了管理员

$ symfony composer remove 'admin'
Run Code Online (Sandbox Code Playgroud)

我安装了最新的之后

$ symfony composer req 'admin'
Run Code Online (Sandbox Code Playgroud)

不确定是否需要。

通过以下https://github.com/EasyCorp/EasyAdminBundle/blob/master/UPGRADE.md 查找生成 EasyAdmin 页面的链接来解决

所以现在我使用 AdminUrlGenerator 而不是 CrudUrlGenerator

现在我的 DashboardController 是 class DashboardController extends AbstractDashboardController { private $adminUrlGenerator;

  public function __construct(AdminUrlGenerator $adminUrlGenerator)
  {
    $this->adminUrlGenerator = $adminUrlGenerator;
  }

  /**
   * @Route("/admin", name="admin")
   */
  public function index(): Response
  {
    $url = $this->adminUrlGenerator
        ->setController(ConferenceCrudController::class)
        //->setAction('edit')
        //->setEntityId(1)
        ->generateUrl();
    
    //$routeBuilder = $this->get(CrudUrlGenerator::class)->build();
    //$url = $routeBuilder->setController(ConferenceCrudController::class)->generateUrl();

      return $this->redirect($url);
      //return parent::index(); 
  }
  ...
Run Code Online (Sandbox Code Playgroud)