我在一個Extbase TYPO3-Extension中使用m:n關係中的某個域,並希望得到一個輸出按am:屬性的關係分組:n關係子,理想情況下尊重包括有幾個關係的條目。TYPO3 Extbase&Fluid從m:n關係屬性中分組的輸出
比方說,我有書籍和類別。書籍有一些「標題」和「memberOfCategories」屬性,類別有一些「名稱」和「areBooks」屬性。一般m:n的東西(使用一些mn表和TCA等必要的字段)工作正常。
使用流體,一本書的所有類別的輸出工作正常,以及具有某一類等所有書籍。
但我需要這樣的一些輸出(包括「複製」屬於不止一類的書籍輸出)(在書視圖/行動方面!):
Category A
Book A
Book B
Category B
Book A
Book C
(No Category)
Book D
Book E
我嘗試使用f:groupedFor
視圖助手,但那不符合我的要求。由子屬性(category.name)分組根據需要不起作用:
<f:groupedFor each="{books}" as="booksOfThisCat" groupBy="memberOfCategories.name" groupKey="memberOfCategories.name">
<h3>{memberOfCategories.name} (should be category name)</h3>
<f:for each="{booksOfThisCat}" as="book">
<li>{book.title}</li>
</f:for>
</f:groupedFor>
我的第一次嘗試是由memberOfCategories
只是分組 - 但是這導致了不同的和無用的結果爲好,因爲memberOfCategories只引用「數量」/一組關係,所以分組是垃圾。
當然,如果我在類別的行動中工作,這將是一個簡單的for each category { for each areBooks }
的事情,但我需要在關於書籍的行動/視圖中的輸出。
我非常確定自己太愚蠢或盲目 - 並且可能會讓一些讀者感到困惑,因爲無論如何,如果有人對此有所暗示,這將是非常棒的。找到有關按日期分組一些類似的問題,有一個自定義視圖助手解決了,但我認爲有可能/應該是一個簡單的解決方案。
哦,哦 - 現在我知道了後面我自己,它只是這麼簡單:我剛纔添加/注射類的存儲庫,以我的書控制器,並指定其所需的輸出(例如的findAll),以我的行動/查看,一切都細ES這已經是該類別控制器下。 – Falcon2014 2014-08-30 13:46:47