2015-03-25 51 views
0

我手上有下面的問題。我的網站有一個擴展名(由我撰寫),用於調整停車場。有些車輛(德語:Fahrzeug sry關於這一點,並且將來當我在我的代碼/文章中使用德語時)以及有類別(FzKategorie)。它們處於N-1關係,這意味着N輛車具有全部1個類別的最小值/最大值。我爲該任務創建了第二個插件,併爲其提供了默認操作:ListByCateory。現在我被困在篩選我的restults,WHERE交出參數的哪些類別項目應該顯示,以及如何理解控制器和流體模板。我整體閱讀(過時和遺漏的//代碼)擴展文檔,但我無法進一步瞭解。控制器和模板(如何正確地過濾結果或通過後端提供參數?)

<?php 
namespace Y7group\Y7Fahrzeugdatenbank\Controller; 
/** 
* FahrzeugController 
*/ 
class FahrzeugController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController { 
    /** 
    * fahrzeugRepository 
    * 
    * @var \Y7group\Y7Fahrzeugdatenbank\Domain\Repository\FahrzeugRepository 
    * @inject 
    */ 
    protected $fahrzeugRepository = NULL; 
    [...] 
    /** 
    * action listByCategory 
    * 
    * @return void 
    */ 
    public function listByCategoryAction(){//\Y7group\Y7Fahrzeugdatenbank\Domain\Model\FzKategorie $cat) { 
     $vehicles = $this->fahrzeugRepository->findAll(); // get all vehicles 
     $this->view->assign('category', 1); // here assign another variable like $cat. 
     $this->view->assign('vehicles', $vehicles); // hand over the query results 
    } 
} 

在這裏,我的模板:

<f:layout name="Default" /> 
<f:section name="main"> 
<h1>Alle Fahrzeuge Category</h1> 
<f:flashMessages renderMode="div" /> 
<table class="tx_y7fahrzeugdatenbank" > 
<tr> 
    <th><f:translate key="tx_y7fahrzeugdatenbank_domain_model_fahrzeug.name" /></th> 
    <th><f:translate key="tx_y7fahrzeugdatenbank_domain_model_fahrzeug.beschreibung" /></th> 
    <th><f:translate key="tx_y7fahrzeugdatenbank_domain_model_fahrzeug.bild" /></th> 
    <th><f:translate key="tx_y7fahrzeugdatenbank_domain_model_fahrzeug.datenblatt" /></th> 
</tr> 

<f:for each="{vehicles}" as="fahrzeug"> 
<f:if condition="{category}=={fahrzeug.category}"> 
    <tr> 
     <td><f:link.action action="show" arguments="{fahrzeug : fahrzeug}"> {fahrzeug.name}</f:link.action></td> 
     <td><f:link.action action="show" arguments="{fahrzeug : fahrzeug}"> {fahrzeug.beschreibung}</f:link.action></td> 
     <td><f:image src="{fahrzeug.bild.originalResource.originalFile.uid}" alt="{fahrzeug.beschreibung}" width="300"/></td> 
     <td><f:link.action action="show" arguments="{fahrzeug : fahrzeug}"> {fahrzeug.datenblatt.originalResource.name}</f:link.action></td> 
    </tr> 
</f:if> 
</f:for> 

誰得到的我的觀點,誰是能幫助我嗎?我確實將這個工作一直持續到明天。 :?_(

回答

0

如何從符合您的類別如果您設置TCA正確的DB剛開車時,而不是

$vehicles = $this->fahrzeugRepository->findAll(); 

嘗試

$vehicles = $this->fahrzeugRepository->findByCategory($category); 

您很可能希望使$category可配置。讓我知道,如果你需要幫助。

+0

Thx,我需要幫助如何移交屬性這種方式。如何從menulink調用插件,如果默認方法需要類似的參數? – Marc 2015-03-26 12:24:35

相關問題