J'ai quelques questions à propos de cakePHP, j'ai passé beaucoup de temps à googler pour trouver une solution et comme je n'en ai trouvé aucun, je ne suis pas sûr de prendre la bonne approche.CakePHP helpers et i18n
Donc, j'ai un menu/plan du site qui fait partie statique (fichier xml - i10n) et une partie dynamique (base de données i18n)
m'a demandé de mettre en cache le menu afin que:
un composant crée un fichier xml cache du menu entier pour chaque langue si elle n'existe pas
une aide crée un cache html formaté à partir du fichier XML créé à partir du composant
La mise en page utilise l'aide pour ajouter le menu dans la page
Questions:
Comment puis-je obtenir la liste des langues disponibles de l'aide et de la composante?
Est-ce
$this->L10n = new L10n(); $this->L10n->lang
la bonne façon d'obtenir la langue réelle?
Si j'importer les aides/composant dans le app_controller au lieu de les taper dans chaque contrôleur
class AppController extends Controller { var $components = array('menu', 'otherComponent'); var $helpers = array('menuCache'); function beforeFilter(){ $this->menu->doSomething(); } }
je reçois un call to undefined object $html
pour la echo $html->charset();
dans la mise en page
ne peut pas comprendre pourquoi ...
Je ne connais pas le problème L10n, mais la raison pour laquelle vous obtenez le "$ html non défini" est que vous avez écrit $ helpers = array ('menuCache'); Par défaut, le gâteau met aussi HtmlHelper, vous devez le faire aussi (et Javascript et d'autres que vous utilisez). c'est-à-dire $ helpers = array ('Html', 'Javascript', 'menuCache', etc ...); –