Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 09-10-2008 12:09:21

Guillhomme
Membre
Date d'inscription: 09-10-2008
Messages: 102

Mes routes ne fonctionnent plus

Bonjour,
Voila j'ai voulut modifier mon bootstrap afin d'en faire un plug-in, mais maintenant, meme les routes de bases ( /toto/titi routant vers TotoController et titiAction ne fonctionnent plus, mis a part, bizarrement, 2 controllers ( index et Users )

Le code du bootstrap :

Code:

<?php
require_once('dummy.php'); //Debug
error_reporting ( E_ALL | E_STRICT );
ini_set ( 'display_errors', 1 );
define ( 'ROOT_DIR', dirname ( dirname ( __FILE__ ) ) );
date_default_timezone_set ( 'Europe/Paris' );

// mise en place des répertoires et chargement des classes
set_include_path ( '.' . PATH_SEPARATOR . './library' . PATH_SEPARATOR . './application/models/' . PATH_SEPARATOR . get_include_path ()  );
include "Zend/Loader.php";
Zend_Loader::registerAutoload ();

$front = Zend_Controller_Front::getInstance();


$front->registerPlugin(new MyZend_Plugin_Initialization('production'));

try {
$front->dispatch();
} catch (Exception $exception) { // attrape toute exception
    MyZend_Exceptions::showException($exception);
}

Et maintenant le plugin :

Code:

<?php
/**
 * Plugin d'initialisation d'application
 * 
 * @uses Zend_Controller_Plugin_Abstract
 */
class MyZend_Plugin_Initialization extends Zend_Controller_Plugin_Abstract
{
    public $config;
    public $auth;
    /**
     * Constructeur
     * 
     * @param  string $env Execution environment
     * @return void
     */
    public function __construct()
    {
       
    }

    /**
     * Evènement route startup
     * 
     * @param  Zend_Controller_Request_Abstract $request
     * @return void
     */
    public function routeStartup(Zend_Controller_Request_Abstract $request)
    {
        $this->setControllerDirectory()
            ->loadConfig()
             ->initDb();
             //->setActionHelpers()
             //->setAuth()
             //->setACL()
             
    }
    
    public function setControllerDirectory(){
$front = Zend_Controller_Front::getInstance();
        $front->setControllerDirectory('./application/controllers');
    return $this;
    
    }

    public function loadConfig(){
        // Chargement de la configuration
        $this->config = new Zend_Config_Ini ( './application/config.ini', 'general' );
        $registry = Zend_Registry::getInstance ();
        $registry->set ( 'config', $this->config );
        return $this;
    }

    public function initDB() {
        // Mise en place de la BDD
        $db = Zend_Db::factory ( $this->config->db );
        Zend_Db_Table::setDefaultAdapter ( $db );
        return $this;
    }
}

Il semblerait que le controller soit trouvé ( j'ai mis un echo dans le init() du controller ) et qu'ils veuillent apeller l'action errorAction, or apres l'avoir mis avec un echo, il ne m'affiche rien.

Si ca peut aider, je vous mets aussi le rapport de l'exception (en vous l'allégeant un peu ):

Code:

Une EXCEPTION A ETE INTERCEPTÉE !!!

Message : Action "error" does not exist and was not trapped in __call()

Code : 404

Fichier : D:\www\test3\Zend\Controller\Action.php

Ligne : 446

Trace :

0 TRACE

[file]=>D:\www\test3\Zend\Controller\Action.php

[line]=>472

[function]=>__call

[class]=>Zend_Controller_Action

[type]=>->

[args]=>Array
array(2) { [0]=> string(11) "errorAction" [1]=> array(0) { } }

1 TRACE

[file]=>D:\www\test3\Zend\Controller\Dispatcher\Standard.php

[line]=>282

[function]=>dispatch

[class]=>Zend_Controller_Action

[type]=>->

[args]=>Array
array(1) { [0]=> string(11) "errorAction" }

Si quelqu'un a une idée ...

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages