2012-10-15 53 views
1

我使用的是最新版本的學說的變化:2.3doctrine2:實體協會第一次通話後

,當你調用生成的聯想功能,在第一時間一切都很好:

$authors = $book->getBookToAuthors(); 
//$authors = array(5) 

但第二次而不是返回所有關聯的數組它返回最後的水合實體:

$authors = $book->getBookToAuthors(); 
//$authors = BookToAuthor entity 

that happ ENS即使沒有別的發生:

$authors = $book->getBookToAuthors(); //will work 
$authors = $book->getBookToAuthors(); //won't work 

getBookToAuthors的()函數是:

public function getBookToAuthors() 
{ 
    return $this->bookToAuthors; 
} 

和映射如下:

/** 
* @var BookToAuthor[] 
* 
* @OneToMany(targetEntity="BookToAuthor", mappedBy="book", cascade={"persist"}) 
* @JoinColumn(name="id", referencedColumnName="book_id", onDelete="cascade") 
*/ 
private $bookToAuthors; 

請告知。我不知道該怎麼辦... :-(

+0

是否真的返回一個'array'?這應該返回一個'ArrayCollection'對象。 – meze

回答

1

對不起對不起對不起 它是在該協會的目標側的錯誤。 目標有一個一對一的關聯,而不是多到一

,如果你有這樣的問題

確保在雙方的關聯類型是匹配