Je me demande soudainement .. pour la page d'accueil qui pointe vers le contrôleur => pages action => affichage et accueil ... où puis-je écrire la logique du contrôleur?Cakephp Home Page logique
2
A
Répondre
5
Dans le PagesController (que vous pouvez copier à partir de cake/libs/controller
). Ou vous pouvez changer l'itinéraire pour que "/" pointe vers un contrôleur/action de votre choix.
2
@dhofstet: Merci!
Maintenant, je peux accéder à ma page d'accueil
Router::connect('/', array('controller' => 'pages', 'action' => 'home'));
sans être connecté
Ceci est mon app/controllers/pages_controller.php:.
<?php
class PagesController extends AppController {
var $name = 'Pages';
var $helpers = array('Html', 'Session');
var $uses = array();
function beforeFilter() {
parent::beforeFilter();
$this->Auth->allow('home');
}
function home() {
}
function display() {
$path = func_get_args();
$count = count($path);
if (!$count) {
$this->redirect('/');
}
$page = $subpage = $title_for_layout = null;
if (!empty($path[0])) {
$page = $path[0];
}
if (!empty($path[1])) {
$subpage = $path[1];
}
if (!empty($path[$count - 1])) {
$title_for_layout = Inflector::humanize($path[$count - 1]);
}
$this->set(compact('page', 'subpage', 'title_for_layout'));
$this->render(implode('/', $path));
}
}
?>
puis-je placer une page contrôleur dans l'application/contrôleur? Le contrôleur de pages peut-il avoir des actions? –
@Harsha Le contrôleur de pages n'a rien de spécial. Regardez-le dans 'cake/libs/controller/pages_controller.php'. Placez votre propre 'pages_controller.php' dans' app/controllers' pour le remplacer par votre propre version, qui peut faire tout ce qu'un contrôleur normal peut faire. – deceze
awesome: D mais j'ai quelques pages dans le dossier views/pages. donc je vais devoir passer aux vues/pages à droite? –