2011-09-08 36 views
0

我嘗試通過創建新類別的方式來實現這種效果:我在表單中添加一個「選擇列表」以顯示我創建的所有類別,所以我嘗試了:symfony 2:關於表單的問題

> /** 
>  * @var string $parent 
>  * 
>  * @ORM\ManyToOne(targetEntity="ProductCategory") 
>  * @ORM\JoinColumn(name="product_category_id", 
> referencedColumnName="id") 
>  */ 
>  
>  private $parent; 

的話,我想知道的是:如果選中該複選框isRoot,父選項設置爲「根」,所以我寫了:

> if($entity->getIsRoot()){ 
>    $entity ->setParent('root'); 
>   } 

但是,它給我一個例外: 預期參數類型「對象」,「字符串」給出

這是怎麼回事?如何解決問題。

在此先感謝! :)

回答

0

看起來你的問題是,

->setParent() 

預計類型類別的對象。

由於您不想爲根節點選擇父類別,因此不應設置父級。

+0

但是,如果我沒有設置父級,它將被設置爲第一個選項,因爲在表單中,父級有一個選擇列表,選擇是我創建的類別。你知道如何在選擇列表中添加一個'默認'選項或一個空白選項嗎? – Gina

+0

完成!感謝您的關注! – Gina