2016-11-18 1 views
0

Je veux accéder aux variables (ou peut-être poster des variables) dans le contrôleur d'une extension extbase. J'utilise TYPO3 7.6.12impossible d'accéder aux variables dans le contrôleur

Ceci est le code dans mon contrôleur:

public function showAction(\Test\MdIframe\Domain\Model\Iframe $iframe = NULL) 
{ 
    \TYPO3\CMS\Core\Utility\DebugUtility::debug($_REQUEST); 
    $args = $this->request->getArguments(); 
    print_r($args); 

Les travaux fonction de débogage, je reçois un tableau rempli, mais $args reste un tableau vide.

Pourquoi? Quelqu'un a une idée?

Répondre

6

Avec $this->request->getArguments vous obtenez seulement arguments définis par l'action et adopté par ?tx_myextension_plugin[argument]=value (f:link.action mettre ses arguments passés automaticaly à ce préfixe):

public function showAction($item = 12, $short = false) 
{ 
    print_r($this->request->getArguments()); 
} 

seront sorties comme ceci:

Array 
(
    [item] => 12 
    [short] => false 
) 

Si vous souhaitez accéder aux vAR globales _GET, vous pouvez utiliser \TYPO3\CMS\Core\Utility\GeneralUtility::_GET('var'); pour obtenir ?var=value

0

Les arguments que vous essayez d'extraire doivent être dans le contexte de la demande de contrôleur. Vos données de poste doivent être adressées au contrôleur comme:

tx_extensionname_pluginname[object][property] 

Si vous utilisez f: formulaire dans votre modèle, FLUID fera pour vous et votre formulaire et les données de poste sont dans la syntaxe correcte.