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é.
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
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. –
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