Я использую Api Platform.
У меня есть две сущности Player и Team и одна сущность PlayerHasTeam для представления в базе данных даты, когда игрок присоединился к команде.
Это моя сущность PlayerHasTeam:
/**
* @ApiResource(
* collectionOperations={
* "get",
* "post"
* },
* itemOperations={
* "get",
* "put",
* "delete"
* }
* )
* @ORM\Table(name="playerHasTeam")
* @ORM\Entity
*/
class PlayerHasTeam
{
/**
* @var Player
*
* @ORM\ManyToOne(targetEntity="App\Entity\Player", inversedBy="id")
* @ORM\JoinColumn(referencedColumnName="idPlayer", name="idPlayer", nullable=false)
*
* @ORM\Id
*/
private $player;
/**
* @var Team
*
* @ORM\ManyToOne(targetEntity="App\Entity\Team", inversedBy="id")
* @ORM\JoinColumn(referencedColumnName="idTeam", name="idTeam", nullable=false)
*
* @ORM\Id
*/
private $team;
/**
* @var DateTime
*
* @ORM\Column(name="joinedAt", type="datetime", nullable=false)
*/
private $joinedAt;
(Getters and Setters)
Проблема в следующем, мне нужно выполнить запрос GET, PUT и DELETE для этого составного объекта.
Api-платформа определяет следующие маршруты:
GET / player_has_teams
POST / player_has_teams
GET / player_has_teams / {id}
PUT / player_has_teams / {id}
DELETE / player_has_teams / {id}
Я не могу использовать последние 3, потому что у меня нет сгенерированного идентификатора.
Я хочу выполнять свои запросы с помощью маршрута, например / player_has_teams / {idPlayer} / {idTeam}
Похоже, api-платформа не справляется с этим делом.
У вас есть предложения?
Спасибо