Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony:Api平台和级联dto_Api_Symfony_Dto - Fatal编程技术网

Symfony:Api平台和级联dto

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

我有一个使用DTO的Api平台项目。 我有一个Foo实体,它是一个API资源,具有:

/**
 * @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端点

谢谢你的帮助