如何使用Doctrine / Symfony2获得完整的结果

时间:2013-11-11 19:59:54

标签: symfony doctrine-orm doctrine fosrestbundle

我无法制定问题的标题。为此道歉。

我在“目录”和“类别”之间有一个OneToMany关联。我还在类别上有一个自引用双向关联(因为一个类别可以包含多个类别)。

问题是当我获取目录时,我的目录的类别是空的。我认为Doctrine可以返回完整的结果,因为Category中有一个外键。

以下是我所做的两个代码片段:

我的实体:

Entity Catalog
/**
 * @ORM\OneToMany(targetEntity="Category", mappedBy="catalog")
 **/
private $catalogCategories;

Entity Category
/**
 * @ORM\ManyToOne(targetEntity="Catalog", inversedBy="catalogCategories")
 * @ORM\JoinColumn(name="catalog_id", referencedColumnName="catalog_id")
 **/
private $catalog;

/**
 * @ORM\OneToMany(targetEntity="Category", mappedBy="categoryParent")
 **/
private $categoryChildren;

/**
 * 
 * @ORM\ManyToOne(targetEntity="Category", inversedBy="categoryChildren")
 * @ORM\JoinColumn(name="category_parent_id", referencedColumnName="category_id")
 **/
private $categoryParent;

我的控制器

 /**
 * @return array
 * @View()
 * @ParamConverter("catalog", class="TestRESTfulAPIBundle:Catalog") 
 */
public function getCatalogAction(Catalog $catalog)
{        
    return array('catalog' => $catalog);
}

请注意,我正在使用FOSRestBundle。当我模拟HTTP请求时,我在JSON对象中获取了我的目录,但我的catalog_categories为空。

我的问题分为两部分: 是否可以从我的数据库中检索完整的记录,因此我的目录以递归的方式包含所有类别。

如果是(我认为这是真的),任何人都可以指出我的错误吗?

我是Symfony2的新手,英语不是我的母语所以请放纵我。

干杯。

0 个答案:

没有答案