@Ryzhakov

Как в symfony form использовать EntityType?

Как правильно использовать EntityType?

Я добавляю автора поста (в форме поле select):
$builder
            ->add('title')
            ->add('content')
            ->add('author', EntityType::class, [
                'class' => User::class
            ])
        ;


Далее, в контроллере я делаю следующее:
$post = $form->getData();
            $em->persist($post);
            $em->flush();


И все это должно верно сохранить автора, так?
Но у меня появляется ошибка, где и что я мог упустить? помогите!
Return value of App\Entity\Post::getAuthor() must be an instance of App\Entity\User, null returned
  • Вопрос задан
  • 223 просмотра
Решения вопроса 1
У вас в методе App\Entity\Post::getAuthor() описано, скорее всего, что возвращаемое значение - App\Entity\User. Добавьте методу возможность возвращать null.
/**
 * @return User|null
 */
public function getAuthor(): ?User
{
    return $this->author;
}

/**
 * @param User $author
 *
 * @return Post
 */
public function setAuthor(User $author): Post
{
    $this->author = $author;

    return $this;
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы