requestAction dans cakephp

J'ai GeoIP intégré dans mon CakePHP. Maintenant, je dois l'appeler à partir de mon point de vue-fichier. Je l'ai fait dans mon contrôleur de fonction:

function getCountry($ip)
{
    $this->GeoIP->countryName($ip);
}

GeoIP est un composant.

Quand je l'ai écrit dans mon point de vue à l'échelle mondiale à quelque chose comme ceci:
$this->GeoIP->countryName('8.8.8.8') il fonctionne bien, mais, comme je me souviens, c'est faux, pour MCV architecture. Donc la bonne façon est d'appeler requestAction pour mon contrôleur.

Ici, j'ai 2 problèmes: - je le faire en fonction php qui se trouve dans l'affichage de fichier:

//MyView.php:
<?php
   function Foo()
   {
      $this->GeoIP->countryName(...);
   }
?>

Première erreur, c'est que $this n'est pas disponible à l'intérieur de la fonction, la deuxième est comment appeler getCountry de mon composant et pass besoin de l'adresse ip dans $ip?

J'ai essayé:

echo $this->requestAction('Monitoring/getCountry/8.8.8.8');

Monitoring est un nom de contrôleur.

Mais ce ne retourne rien sans erreurs. Quel est le bon chemin et comment appeler cette fonction?

InformationsquelleAutor Max Frai | 2012-02-11