Doctrine 2 @ManyToOne属性始终返回null

时间:2015-09-18 06:55:55

标签: php doctrine-orm zend-framework2 many-to-one

我有这些实体

/** @ORM\Entity */
class Produto {

    /* Other attributes */

    /** 
     * @ORM\ManyToOne(targetEntity="Produto\Entity\Categoria")
     * @ORM\JoinColumn(name="categoria_id", referencedColumnName="id")
     */
    private $categoria;

    public function getCategoria() {
        return $this->categoria;
    }

    public function setCategoria(Categoria $categoria) {
        $this->categoria = $categoria;
    }
}

/** @ORM\Entity */
class Categoria {

/* Other attributes */

    /** @ORM\Column(type="string") */
    private $nome;

}

但是当我调用方法findAll时,$categoria属性类别始终是null,我做错了什么?

我尝试在实体类别上添加OneToMany注释,但它不能很好地工作,有一个地方可以解释为什么会发生这种情况?我在文档中找不到任何内容

1 个答案:

答案 0 :(得分:0)

Class Categoria需要有一个$ id类变量。此外,Producto实体的数据库中的数据需要将Categoria_id字段映射到Categoria id才能生效。