2012-09-26 3 views
-1

J'ai une aide personnalisée (MessageHelper) dans laquelle j'ai besoin d'accéder à une autre aide personnalisée (IncentiveHelper). J'ai suivi le format décrit dans la documentation, mais je reçois cette erreur:Utilisation d'une aide personnalisée dans une aide personnalisée

Undefined property: MessageHelper::$Incentive [APP/views/helpers/message.php, line 21] 

Voici le morceau correspondant du code. A mes yeux, il semble pratiquement identique à celui du 1.3 docs:

class MessageHelper extends AppHelper { 
    public $helpers = array('Incentive'); 

    public function rebates($rebates) { 
    debug($this->Incentive); exit; 
    } 
} 

Les fichiers sont nommés et stockés conformément à la convention comme app/views/helpers/message.php et app/views/helpers/incentive.php. Sur un coup de tête, j'ai essayé d'inclure une aide de base (HtmlHelper) à la place, mais cela a échoué de la même manière.

Qu'est-ce qui me manque ici? Y a-t-il quelque chose d'évident que je ne vois pas? On dirait qu'il doit y avoir, mais mes yeux commencent à se croiser. N'importe quel coup de pouce dans la bonne direction serait très apprécié.

+1

la question clé est: comment allez-vous l'importation/y compris votre aide de message? dans le contrôleur via 'public $ helpers = array ('Message')'? – mark

+0

Hmmm. C'est un bon point. Dans ce cas, je pense que je l'utilise dans un contrôleur (ne juge pas) et en utilisant 'App :: import()'. Je pense que vous êtes sur quelque chose. –

+1

voir, c'est votre problème. Ne faites pas ça :). échec par conception - faites-en une lib ou un composant et utilisez-le de la bonne façon. – mark

Répondre

Questions connexes