2015-12-21 58 views
1

我已經創建了我自己的TYPO3擴展。該擴展名將顯示文件列表。在後端我可以創建新的類別。在這些類別中,我可以添加新文件。這工作。但是當我將鏈接下載按鈕到新的控制器操作時,它總是出現錯誤。TYPO3 Extbase致電新行動

我創建了一個新的控制器(類 - >控制器 - > DownloadController.php)。 該文件包含以下內容:

namespace Mbdownloads\MbDownloads\Controller; 
class DownloadController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController { 

/** 
* action list 
* 
* @return void 
*/ 
public function downloadAction() { 
    //$files = $this->fileRepository->findAll(); 
    $this->view->assign("sample_var", "sample value"); 
    //$this->view->assign('files', $files); 
} 

ext_localconf.php我添加下面幾行:

'Mbfilelist', 
array(
    'Category' => 'list,show,test', 
    'File' => 'show', 
    'Download' => 'download', 

然後,我添加以下文件:資源/私有/模板/下載/ Download.html

最後在show action模板中,我添加流體下載鏈接到控制器:

<f:link.action action="download" controller="Download"><i class="fa fa-download"></i> File Download</f:link.action> 

網址:

index.php?id=217&tx_mbdownloads_mbfilelist%5Baction%5D=download&tx_mbdownloads_mbfilelist%5Bcontroller%5D=Download&cHash=c1ee54cc5ccaedbeeeeef098a2029e5c 

但現在得到的只有我:哎呀,發生錯誤! :(

其中工程唯一的動作是表演動作? 類/控制器/ CategoryController /的showAction

如果我在這個控制器中添加一個動作,exampleAction我會打電話的動作,同樣的錯誤:糟糕,出現錯誤!

感謝您的幫助! 我用TYPO3 6.2.16 ...

+0

在安裝工具中設置開發預設,您將獲得有關錯誤的更多詳細信息。其中一個問題可能是緩存。嘗試清除安裝工具中的所有緩存。 – smitrovic

+0

好吧,我清除了所有的緩存,不工作,然後我激活了調試選項,它說:控制器「下載」不允許通過這個插件。我ext_localconf.php看起來像:\ TYPO3 \ CMS \ Extbase \公用\ ExtensionUtility :: configurePlugin( \t 'Mbdownloads' $ _EXTKEY, \t 'Mbfilelist', \t陣列( \t \t '分類'=>'列表顯示」, \t \t '文件'=> '秀', \t \t '下載'=> '下載', \t \t \t), \t //不可緩存的操作 \t陣列( \t \t '分類'=> '名單,秀', \t \t '文件'=> '', \t \t \t) –

+0

嘗試清除typo3temp文件夾。它應該幫助:) – smitrovic

回答

1

你在柔性成型添加你的行動?

<switchableControllerActions> 
    <TCEforms> 
     <label>Select Options</label> 
     <onChange>reload</onChange> 
     <config> 
      <type>select</type> 
      <items> 
       <numIndex index="0"> 
        <numIndex index="0">...Select Item...</numIndex> 
       </numIndex> 
       <numIndex index="1"> 
        <numIndex index="0">Download</numIndex> 
        <numIndex index="1">ControllerName->action;Download->download</numIndex> 
       </numIndex> 
      </items> 
     </config> 
    </TCEforms> 
</switchableControllerActions> 

添加控制器名稱和操作後,還必須更新您的FE插件元素。

+0

嗨Ghansyhyam,是的,這是問題!現在我在flexform中添加了這個動作,現在它可以工作了! –