IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

Problème de layout dans cakephp [CakePHP]


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut Problème de layout dans cakephp
    Bonjour,


    Je fais actuellement la partie admin d'un tutoriel trouvé sur un autre site. Arrivé à la partie admin, l'affichage ne se fait pas.
    La mise à jour du fichier core a été fais et le fichier appcontroller.

    lorsque j'appel la page admin j'ai un double affichage de mon layout par defaut

    PageController.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    <?php
     
    App::uses('AppController', 'Controller');
     
    /**
     * Static content controller
     *
     * Override this controller by placing a copy in controllers directory of an application
     *
     * @package       app.Controller
     * @link http://book.cakephp.org/2.0/en/controllers/pages-controller.html
     */
    class PagesController extends AppController {
     
    /**
     * Controller name
     *
     * @var string
     */
    	public $name = 'Pages';
     
    /**
     * Default helper
     *
     * @var array
     */
    	public $helpers = array('Html', 'Session');
     
    /**
     * This controller does not use a model
     *
     * @var array
     */
    		public $uses = array('Post');
     
    /**
     * Displays a view
     *
     * @param mixed What page to display
     * @return void
     */
    	public 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));
    	}
    	function menu(){
    			$pages = $this->Post->find('all',array(
    				'conditions' => array('type' =>'page', 'online'=>1),
    				'fields' =>array('id','slug','name')
    				));
    				return $pages;
    	}
    	function show($id = null, $slug = null){
    		if(!$id)
    			throw new NotFoundException('Aucune page ne correspond a cet ID');		
    		$page = $this->Post->find('first',array(
    			'conditions' => array('id' => $id)
    			));
    			if(empty($page))
    				throw new NotFoundException('Aucune page ne correspond a cet ID');
    			if($slug != $page['Post']['slug'])
    				$this->redirect($page['Post']['link'],301);
    			$d['page'] = current($page);
    			$this->set($d);
    		}	
    		/**
    		* parie avec les prefix
    		**/
    		function admin_index(){
    		$d['pages'] = $this->Paginate('Post',array('type'=>'page'));
    		$this->set($d);
    	}
     
    }
    Mon fichier AppController.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    <?php
     
    App::uses('Controller', 'Controller');
     
     
    class AppController extends Controller {
     
    	public $helpers = array('Text','Form','Html','Session','Cache');
    	public $components = array('Session','Cookie',
    		'Auth' => array(
    			'authenticate' =>array(
    				'Form' => array(
    					'scope'=>array('User.active'=>1)
    					)
    				)
    			)		
    		);	
     
    	function beforeFilter(){
    		$this->Auth->loginAction = array('controller'=>'users','action'=>'login','membre'=>false,'admin'=>false);
    		$this->Auth->authorize = array('Controller');
     
    		if(!isset($this->request->params['prefix'])){
    			$this->Auth->allow();	
    		}
    		if(isset($this->request->params['prefix']) && $this->request->params['prefix'] == 'admin'){
                $this->layout = 'admin';
    		}
    	}
    }
    Ci-joint une capture écran de ce que j'ai en affichage dans le navigateur

    ca fait 3 jour que j'essaye de voir d('ou viens le soucis

    Je vous remercie de votre aide

    Runcafre91
    Images attachées Images attachées  

  2. #2
    Membre régulier
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2012
    Messages
    57
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Février 2012
    Messages : 57
    Points : 74
    Points
    74
    Par défaut
    Salut, désolé de la réponse tardive, mais dans l'image que tu donnes il te dit qu'il manque une action "admin_menu", crée la dans ton "controller" et regarde le résultat.

  3. #3
    Membre régulier
    Homme Profil pro
    Inscrit en
    Décembre 2008
    Messages
    299
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Secteur : Distribution

    Informations forums :
    Inscription : Décembre 2008
    Messages : 299
    Points : 103
    Points
    103
    Par défaut
    Citation Envoyé par ch0c4 Voir le message
    Salut, désolé de la réponse tardive, mais dans l'image que tu donnes il te dit qu'il manque une action "admin_menu", crée la dans ton "controller" et regarde le résultat.
    Bonjour,

    j'avais créé un admin_menu.ctp (l'action + la vue) mais cela n'a rien changer
    Du coups j'ai laissé de coté pour le momment cette parti afin d'avancer sur autrechoe

    merci de votre réponse

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Problème de changement de Layout dans JPanel
    Par dodup64 dans le forum Agents de placement/Fenêtres
    Réponses: 2
    Dernier message: 03/09/2010, 14h01
  2. Réponses: 5
    Dernier message: 21/11/2008, 16h46
  3. problème de police dans un richedit
    Par chtiot dans le forum Composants VCL
    Réponses: 4
    Dernier message: 28/10/2003, 09h48
  4. Réponses: 19
    Dernier message: 27/08/2003, 15h32
  5. problème de guillemets dans une formule shell
    Par dim_italia dans le forum VBA Access
    Réponses: 7
    Dernier message: 18/08/2003, 12h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo