У меня есть эта сущность
/**
* @ApiResource(
* collectionOperations={
* "get"={
* "access_control"="is_granted('IS_AUTHENTICATED_FULLY')"
* },
* "post"={
* "access_control"="is_granted('IS_AUTHENTICATED_FULLY')"
* }
* },
* itemOperations={
* "get"={
* "access_control"="is_granted('ROLE_ADMIN') or object.getUser() == user"
* },
* "put"={
* "access_control"="is_granted('ROLE_ADMIN') or object.getUser() == user"
* },
* "delete"={
* "access_control"="is_granted('ROLE_ADMIN') or object.getUser() == user"
* }
* }
* )
* @ORM\Entity(repositoryClass="App\Repository\FeedRepository")
*/
class Feed implements AuthoredEntityInterface
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="feeds")
* @ORM\JoinColumn(nullable=false)
*/
private $user;
/**
* @ORM\Column(type="string", length=255)
*/
private $name;
/**
* @ORM\Column(type="string", length=2083, unique=true)
*/
private $url;
//various getters and setters
}
Связанная сущность User реализует UserInterface. Эта сущность реализует интерфейс, который я использую для автоматического заполнения поля пользователя зарегистрированным пользователем.
Автоматически сгенерированная конечная точка POST / api / feeds ожидает 3 параметра: user, name и url.
Я хочу исключить пользователя параметра из конечной точки (потому что автоматически генерируется внутри). Я знаю, что мог просто не использовать его, но это вызывает проблемы при тестировании, где я получаю это сообщение:
Предоставлено неверное значение (недействительный IRI?)
спасибо