Joomla: Appel de fonction d'assistance à partir de l'intérieur d'un modèle?

Je commence avec php et Joomla développement, et de trouver qu'il est difficile de travailler dans Joomla pour faire assez simple. Est passé par la MVC Joomla exemple et Lynda (et ont construit une quelques simples vues à ce jour).

J'ai un fichier de helper/classe/fonction qui affiche toutes les identifiants qui existent dans la "terminé" table afin que je puisse afficher un lien, soit un nouveau record basé sur l'utilisateur ou modifier un utilisateur existant.

J'ai déjà utilisé une autre fonction dans ce fichier de helper avec succès dans une autre partie de la composante ( Joomla: Écrire et appeler une fonction d'assistance dans un composant ).

Quand je fais la même chose dans le modèle, j'obtiens ceci: "erreur Fatale: Appel à la méthode protégée JModel::_createFileName() dans un contexte "JView" dans C:\wamp\www\ilplocal\libraries\joomla\application\component\view.php sur la ligne de 773". Quand je l'ai essayer dans la vue, fonctionne très bien - mais j'ai besoin de la sortie dans le modèle.

Code:

lookups.php

abstract class LookupHelper {

    public function other_functions($vars){
        ...
    }

    public function completions_exist() {

        $db =& JFactory::getDBO();            
        $query = $db->getQuery(true);

        $query->SELECT(' #__completed.completed_userid as UserID');
        $query->FROM (' #__completed');
        $query->GROUPBY (' #__completed.completed_userid ');

       $db->setQuery($query);    
       $result = $db->loadResultArray(0); 

       return $result;                        

    }        
}

Dans le modèle:

$completions_exist = Jview::loadHelper('lookups'); 
$completions_exist = LookupHelper::completions_exist();

Cette ligne est en train de jeter de l'erreur: $completions_exist = Jview::loadHelper('lookups');

J'ai trouvé quelques très vagues références à quelque chose appelé JLoader::inscrivez-vous à tirer dans des fonctions d'assistance, mais ne peut pas trouver une bonne documentation sur que dans Joomla, sauf pour tout le monde en disant à l'utiliser. J'ai DONC essayé de l'utiliser comme ceci:

 JLoader::register('LookupHelper', dirname( JPATH_COMPONENT_ADMINISTRATOR).DS.'helpers'.DS.'lookups.php');
 $completions_exist = LookupHelper::completions_exist();

qui génère cette erreur: "Fatal error: Class 'LookupHelper' ne trouve pas dans C:\wamp\path\to\model\not\to\lookups.php. Essayé la manipulation de la JLoader::register(tout ici) et il n'a pas d'effet le chemin de la message d'erreur.

Pensées? Pourquoi faut-il travailler dans une vue et pas dans le modèle? Comment puis-je utiliser les fonctions d'assistance à l'intérieur d'un modèle?

Merci!

#####MODIFIER

Grâce à @cppl ressemble à un problème de chemin d'accès avec le deuxième morceau de code. Aussi, j'ai lu que l' .DS. la notation se fera progressivement dans les futures versions, de sorte que le code du travail est:

JLoader::register('LookupHelper', JPATH_COMPONENT_ADMINISTRATOR.'/helpers/lookups.php');
$completions_exist = LookupHelper::completions_exist();

OriginalL'auteur Gisto | 2012-05-02