[英]Symfony2 APYDataGridbundle ManyToMany
我正在使用Symfony2和APYDataGridBundle 。 在電影和流派對象之間,我有很多關系:
/**
* Film
*
* @ORM\Table(name="Film")
* @ORM\Entity(repositoryClass="Filmoteca\FilmoBundle\Repository\FilmRepository")
* @GRID\Source(columns="id, genres.genre")
*/
class Film
{
/**
* @var \Filmoteca\FilmoBundle\Entity\Genre
*
* @ORM\ManyToMany(targetEntity="Genre", inversedBy="films")
* @ORM\JoinTable(name="genre_films")
*
* @GRID\Column(field="genres.genre", title="Genre", filter="select", selectMulti="true)
**/
private $genres;
在我的流派課程中:
/**
* @ORM\ManyToMany(targetEntity="Film", mappedBy="genres")
**/
private $films;
效果很好,但是對於每部電影的每種流派,都會顯示不同的行。 我想獲得一列顯示所有流派的專欄。
我得到:(第1行)7 / Bandàpart /戲劇(第2行)7 / Bandeàpart / Commedy
但我希望看到一個包含所有流派的數組:(第7行)/樂隊àpart /戲劇,喜劇
有任何想法嗎? 謝謝!
你試過了嗎:
@GRID\\Column(field="genres.genre:GroupConcat", title="Genre", filter="select", selectMulti="true")
並為源添加一個groupBy:
@GRID\\Source(columns="id, genres.genre:GroupConcat", groupBy={"id"})
如果GroupConcat無法立即使用,則必須按照APYDataGridBundle DQL函數符號文檔中的說明添加原則擴展
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.