0

我有一个Book有关系的实体Author

/**
 * Book
 *
 * @ORM\Table()
 * @ORM\Entity(repositoryClass="App\BookBundle\Entity\BookRepository")
 */
class Book {

    /**
     * @var integer
     *
     * @ORM\Column(name="author_id", type="integer")
     * 
     */
    private $authorId;

    /**
     * 
     * @ORM\ManyToOne(targetEntity="Author", inversedBy="books")
     * @ORM\JoinColumn(name="author_id", referencedColumnName="id")
     */
    private $author;

    //the rest of entity...

}

/**
 * Author
 *
 * @ORM\Table()
 * @ORM\Entity(repositoryClass="App\BookBundle\Entity\AuthorRepository")
 */
class Author {

    /**
     * @ORM\OneToMany(targetEntity="Book", mappedBy="author")
     */
    private $books;

    //the rest of entity...

}

我有一个BookType包含author_id字段的表单。

  class BookType extends AbstractType {

    /**
     * @param FormBuilderInterface $builder
     * @param array $options
     */
    public function buildForm(FormBuilderInterface $builder, array $options) {     
         $builder->add('authorId', 'hidden', array(
            ))
         //the rest of the form...

输入是隐藏的author_id,其值在客户端由自动完成功能填充。现在我需要在提交表单时在服务器端验证它。

如何验证该作者是否author_id存在?我不敢相信 Symfony/Doctrine 中没有内置的解决方案。

4

0 回答 0