這是我的問題。我有一個表單,我想將數據發送給JSON任務。但是不管我做什麼,任務都不會運行。我只是得到了以下錯誤:Joomla 2.5網站任務不會觸發
Invalid controller: name='controls', format='json'
至於我可以看到有什麼話要防止控制器運行。這是代碼。
class HelloWorldControllerControls extends JController{
/*function __construct(){
parent::__construct();
}*/
public function postal(){
JFactory::getDocument()->setMimeEncoding('application/json');
JResponse::setHeader('Content-Disposition','attachment;filename="status.json"');
//$postal = JRequest::getVar('postal_code',false);
//$dispatcher = JDispatcher::getInstance();
//$saveLocalCookie = $dispatcher->trigger('onSavePostalCode', array('code'=>$postal));
echo json_encode(array('success'=>true));
jexit();
}
}
當然這是在網站controllers
文件夾並命名爲controls.json.php
我與我使用的管理面板,做幾乎完全一樣的東西另一個控制器匹配這一點,但它的工作原理管理員,不在該網站。
我正在使用的JRoute試圖調用它。我可俯瞰
index.php?option=com_helloworld&task=controls.postal&format=json
什麼?
編輯:
爲了澄清,我需要直接調用任務,因爲所有我會做的JSON格式輸出的原始數據,沒有必要爲一個視圖,只有一個型號的控制器。目前,由於我仍在測試中,所以尚不需要該模型。
編輯2:
找到了答案的一部分,但我要離開它打開,因爲這答案是不是真的很大。根據Joomla如何在「網站」部分設置MVC(根據我的測試),它是不可能的。它總是先查看視圖,然後是控制器。我只能通過確定視圖來啓動任務。有一個機會我錯了,並從我的測試中誤導,因爲沒有正確構建MVC的開源框架似乎不合邏輯。
所以爲了解決這個問題,你需要使用「視圖」作爲「控制器」。
這可能有幫助http://forum.joomla.org/viewtopic.php?p=2282503 –
看到,但似乎不是同一個問題。我會更新問題來澄清,謝謝。 –
不客氣,但我懷疑我可以有任何進一步的幫助,我想我會看到我能在Google上找到你的。祝好運喬丹,歡呼。 –