2010-07-12 17 views
3

J'utilise CodeIgniter 1.7.2 et merveilleux wrapper Dwoo Phil Sturgeon qui me permet d'utiliser la bibliothèque de modèles Dwoo dans CodeIgniter - http://philsturgeon.co.uk/code/codeigniter-dwooLa meilleure façon d'inclure la vue dans le modèle Codeigniter en utilisant Dwoo?

J'ai une petite question concernant l'inclusion d'autres fichiers de modèle de vue dans les fichiers de mon modèle. Dites par exemple que j'ai un fichier dashboard.php et je veux inclure un en-tête et un pied de page, quelle est la meilleure façon de le faire?

Je habituellement juste faire:

<?php 
$this->load->view('header'); 
?> 

Et cela semble fonctionner, mais le point tout en utilisant une bibliothèque de modèles est de séparer le code html de mon. Puis-je utiliser la fonctionnalité d'inclusion de Dwoo et si oui, comment?

Mise à jour
Depuis l'affichage cela, j'ai travaillé sur les tenants et les aboutissants de Dwoo, vous pouvez inclure des fichiers de vue et utiliser des choses comme l'héritage de modèle pour accomplir la même chose qui est plus propre que l'attribution des vues variables. Je ne recommande pas le plus tard, sauf si vous en avez vraiment besoin.

Répondre

10

Je ne sais pas Dwoo, mais vous devriez être en mesure d'attribuer la sortie de l'analyseur à une variable et passer que votre vue:

$data_array['header'] = $this->parser->parse('header', $header_data, TRUE); 

Si vous n'avez pas besoin d'analyser votre en-tête/pied de page, attribuez simplement la sortie de la vue à une variable et transmettez-la à votre modèle. La syntaxe est fondamentalement la même:

$data_array['header'] = $this->load->view('header', '', TRUE); 

Ref: http://codeigniter.com/user_guide/libraries/parser.html et http://codeigniter.com/user_guide/general/views.html

Puis, des regards de celui-ci (lire le wiki Dwoo sur l'utilisation), il vous suffit d'ajouter {$header} à votre modèle où vous voulez votre en-tête à apparaître.

+0

Parfait. Je ne peux pas croire que cette pensée ne m'a jamais traversé l'esprit. Je vous remercie. –