ErrorException:Catchable Fatal Error:类的对象无法转换为字符串 - 由下拉菜单引起,但为什么?

mic*_*jnr 5 symfony doctrine-orm

我有以下代码,它从数据库中检索页面slugs,然后创建一个相关的子页面:

        $builder->add('subtocontentoptions', 'entity', array(
            'class' => 'ShoutAdminBundle:Content',
            'property' => 'slug',
            'query_builder' => function($repository) { 
                return $repository->createQueryBuilder('p')
                ->where('p.mainpage = :main')
                ->setParameter('main', '1')
                ->orderBy('p.created', 'ASC');
            }
        ));
Run Code Online (Sandbox Code Playgroud)

该代码有效,因为它显示了我拥有的所有父页面的下拉菜单.但是,当我将数据保存到数据库时,我收到以下错误:

ErrorException:Catchable Fatal Error:类Sout\AdminBundle\Entity\Content的对象无法转换为C:\ wamp\www\vendor\doctrine-dbal\lib\Doctrine\DBAL\Statement.php第131行中的字符串

我检查了Content实体文件的内容,这里是声明的变量:

/**
 * @var integer $subtocontentoptions
 *
 * @ORM\Column(name="SubToContentOptions", type="integer", nullable=false)
 */
private $subtocontentoptions;
Run Code Online (Sandbox Code Playgroud)

并降低内容实体文件:

/**
 * Set subtocontentoptions
 *
 * @param integer $subtocontentoptions
 */
public function setSubtocontentoptions($subtocontentoptions)
{
    $this->subtocontentoptions = $subtocontentoptions;
}

/**
 * Get subtocontentoptions
 *
 * @return integer 
 */
public function getSubtocontentoptions()
{
    return $this->subtocontentoptions;
}
Run Code Online (Sandbox Code Playgroud)

一旦取下这个下拉列表,其余的代码就能正常工作.我不确定为什么下拉导致这个错误?

谢谢

ıɾu*_*uǝʞ 10

与sf2/doctrine2项目有同样的问题,实现该__toString方法为我解决了这个问题:

public function __toString()
{
    return strval($this->id);
}
Run Code Online (Sandbox Code Playgroud)