我刚刚尝试了https://api-platform.com/docs/core/operations/#recommended-method示例。
Book.class
CreateBookPublication
类(1/1)RuntimeException 无法自动装配服务“ App \ Controller \ CreateBookPublication”:方法“ __construct()”的参数“ $ bookPublishingHandler”具有类型 “ App \ Controller \ BookPublishingHandler”,但找不到此类。
你有什么主意吗? 我想为测试目的生成一个没有理论的自己的硬编码响应。
答案 0 :(得分:0)
您似乎没有BookPublishingHandler
类,必须自己实现,此docs示例未完全正常运行。
错误说DI试图找到App\Controller\CreateBookPublication
,但它不存在或未注册为服务。我假设您使用的是默认配置,并且它是自动在src/
目录中找到注册服务。
因此,在创建类文件BookPublishingHandler.php中创建目录src/Handler
<?php
namespace App\Handler;
use App\Entity\Book;
class BookPublishingHandler
{
public function handle(Book $book): array
{
// your logic for publishing book or/and eg. return your custom data
}
}
并将导入添加到您的CreateBookPublication控制器
<?php
namespace App\Controller;
use App\Handler\BookPublishingHandler;
或者您也可以直接从控制器返回硬编码数组进行测试。