2010-06-16 13 views
2

Je viens de terminer le "tutoriel Blog Post 15 min" inclus dans la documentation de cakephp. On m'a demandé un autre tutoriel pour changer la mise en page du premier tutoriel.Comment utiliser default.ctp dans cakephp

Cependant, je suis assez nouveau pour la programmation MVC/Cakephp et je n'ai aucune idée de la façon de le faire. Eh bien, je sais que j'ai besoin de "default.ctp" placé dans app/views/layouts/et je suppose que je dois inclure pour inclure mes données? . . . Je suis vraiment à la perte de ce que je dois faire. J'ai mis en place mon default.ctp comme je l'ai mentionné ci-dessus, mais quand je vais à localhost: 9999/posts la mise en page est toujours la même. Je suppose que je dois inclure une feuille de style (et si oui, où?)

Je suppose que si quelqu'un peut me diriger dans la bonne direction vers un guide du débutant pour mettre en page le style ou comment l'utiliser, j'apprécierais grandement toute aide.

+1

Votre question se base sur des principes de base très simples de Cake.Votre disposition est principalement pour la structure; $ content_for_layout est la variable qui est définie avec le contenu de la vue et est ensuite placée dans la présentation. Votre mise en page par défaut (si vous n'en créez pas) est insérée à partir des bibliothèques de gâteaux; Une fois que vous en ajoutez un à views/layouts/default.ctp, celui-ci sera utilisé plutôt que la mise en page par défaut de la bibliothèque. Si vous êtes aux prises avec ce genre de choses, vous devez vraiment regarder le livre davantage. –

+0

Veuillez sélectionner une réponse pour marquer votre question comme réponse! – RedDragon

Répondre

0

Je recommande vraiment le Cookbook CakePHP, facile à trouver sur la page d'accueil de CakePHP. Modifier default.ctp devrait éditer la disposition de vos applications.

Une question plus spécifique (exemples de code de votre default.ctp, résultats attendus, etc.) pourrait aider les gens à fournir une meilleure réponse que la mienne.

+0

Ah oui, je suis désolé. Eh bien, je suppose que vous êtes familier avec le tutoriel de 15 minutes de blog. On m'a demandé de compléter ce didacticiel et de créer des catégories pour le tutoriel mentionné ci-dessus, ce qui me laisse avec localhost: 9999/posts ainsi que localhost: 9999/categories (toutes avec leurs propres contrôleurs, vues, etc). le livre de cuisine, j'ai trouvé où ils parlaient de la façon d'utiliser la structure de mise en page en ajoutant à default.ctp. Cependant, il ne semble pas changer quelque chose .. Savez-vous comment ajouter un style à cela? –

+0

Vous devrez modifier le fichier CSS par défaut. Dans le répertoire 'webroot' je pense, au moins je pense que c'était la dernière fois que j'ai utilisé CakePHP (pas mal de temps) ... – thomasfedb

1

Le manque de feuilles de style n'a aucun impact ici.

Comment MVC fonctionne dans CakePHP:

  • Le routeur envoie une requête entrante à un Contoller approprié.

  • La fonction de contrôleur appropriée s'exécute (pas de sortie, récupération de données, configuration de variables).

  • La vue appropriée est affichée. En fait, la sortie de la vue est simplement contenue dans $ content_for_layout.

  • Ce que vous obtenez vraiment dans le navigateur est dans la mise en page. Par conséquent, vous pouvez mettre la sortie de votre vue dans la disposition par echo $content_for_layout dans default.ctp. (Bien sûr, vous pouvez également avoir des dispositions différentes.) En outre, la mise en page peut être améliorée avec des éléments.

+0

Merci les gars. Je l'ai fait fonctionner assez rapidement. Il s'avère que Coda a été configuré pour cacher les extensions, donc quand j'ai enregistré le fichier en tant que default.ctp, il essayait automatiquement de l'enregistrer en tant que default.ctp.ctp (que j'ai déjà eu ce problème, et Coda aime réinitialiser ceci sur moi). @Travis Leleu, Merci! Oui, j'ai relu le livre assez souvent. Je remercie, je pourrais juste passer à un autre éditeur pour mon utilisation cakephp pour éviter ces problèmes à l'avenir. –

+0

Essayez Eclipse PDT http://bakery.cakephp.org/articles/view/setting-up-eclipse-to-work-with-cake – bancer

2

Je vous conseille de lire ce qui suit du livre de cuisine: Layouts et CSS. Copiez ensuite la mise en page de /cake/libs/view/layouts/ à /app/views/layouts/ et modifiez-la selon vos besoins. Après cela, créez votre feuille de style (ou modifiez-en une existante) en /app/webroot/css/ et incluez-la dans votre mise en page.

2
  1. Créer dans l'application/Afficher/Mise en page un fichier nommé "my_posts_layout.ctp"

  2. Dans votre PostController défini $ this-> layout = 'my_posts_layout';

De cette façon, vous devriez voir le contenu défini sur my_posts_layout.ctp.

+1

CakePHP 2.6.0, mettez cette ligne à la fin de la méthode spécifique (dans la classe de contrôleur)): '$ this-> render ('my_posts_layout');' –

Questions connexes