Symfony:Api平台和级联dto
我有一个使用DTO的Api平台项目。 我有一个Foo实体,它是一个API资源,具有:Symfony:Api平台和级联dto,api,symfony,dto,Api,Symfony,Dto,我有一个使用DTO的Api平台项目。 我有一个Foo实体,它是一个API资源,具有: /** * @ApiResource( * input=FooInput::class, * attributes={ * ... * } * ) * @ORM\Entity(repositoryClass="App\Repository\FooClasseRepository") */ class Foo { /** * @OR
/**
* @ApiResource(
* input=FooInput::class,
* attributes={
* ...
* }
* )
* @ORM\Entity(repositoryClass="App\Repository\FooClasseRepository")
*/
class Foo
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=50)
*/
private $label;
/**
* @ORM\OneToMany(targetEntity="App\Entity\Bar", mappedBy="bar", orphanRemoval=true, cascade="all")
*/
private $bars;
}
而差饷物业估价署:
final class FooInput {
/**
* @var integer
*/
public $id;
/**
* @var string
* @Assert\NotBlank()
*/
public $label;
public $bars;
}
如您所见,还有一个Bar实体,它可能无法通过API(no/API/bars端点)访问,并且与Foo实体有一个OneToMany关系
我想为Bar实体使用专用DTO。
然后我创建了/App/Dto/BarInput.php,但我不知道在哪里/如何定义“input=BarInput::class”
如果我在Bar中添加@ApireSource,这将创建一个我不想要的Bar端点
谢谢你的帮助