Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
Pages: 1
Bonjour,
Tout nouveau et fraichement arrivé, je teste actuellement ce framework pour ma société.
J'essaye quelques essais pour voir...
J'ai un soucis sur la définition des routes.
Je n'arrive pas à afficher la page qu'il faut en fonction de mes règles de routages.
voici mon bootstrap
<?php /** BootStrap */ error_reporting(E_ALL|E_STRICT); ini_set('display_error','on'); ini_set('include_path' , ini_get('include_path') . PATH_SEPARATOR . '../library'); /** @see Zend_Controller_Front */ require_once 'Zend/Loader.php'; Zend_Loader::LoadClass('Zend_Controller_Front'); Zend_Loader::LoadClass('Zend_Config_Ini'); Zend_Loader::loadClass('Zend_Controller_Router_Rewrite'); $config = new Zend_Config_Ini('../application/config.ini', array('config','rewrite')); $router = new Zend_Controller_Router_Rewrite(); $router->addConfig($config, 'routes'); $frontCtrl = Zend_Controller_Front::getInstance(); $frontCtrl->setRouter($router); $frontCtrl->setControllerDirectory('../application/controllers'); if($config->developper) $frontCtrl->throwExceptions(true); else $frontCtrl->throwExceptions(false); $frontCtrl->dispatch(); ?>
Je charge mes routes via le fichier ini suivant
[config] developper = false [rewrite] routes.profile.route = "profile/:username" routes.profile.defaults.controller = profile routes.profile.defaults.action = userInfo routes.profile.defaults.username = vide
Bien sur j'ai une arborescence disposant d'un controller profile
<?php /** @see Zend_Controller_Action */ require_once 'Zend/Controller/Action.php'; class ProfileController extends Zend_Controller_Action { public function userInfoAction() { $request = $this->getRequest(); $this->view->username = $request->getParam('username'); } } ?>
et d'un vue adéquate
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"; "http://www.w3.org/TR/xhtmll-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> <title>Zend Framework Test</title> </head> <body> <h1>Nom du user = <?php echo $this->username ;?</h1> </body> </html>
J'essaye d'arrive sur cette vue via l'url http//:127.0.0.1/profile/narayana
Malheureusement je suis redirigé vers le controilleur d'erreur...
au passage voici mon htaccess
RewriteEngine on RewriteRule !\.(js|ico|gif|jpg|png|css)$ index.php
Auriez-vous des informations sur ce soucis ?
cordialement.
Dernière modification par narayana (20-03-2008 16:13:48)
Hors ligne
Salut
Peut-on avoir le détail de ton erreur renvoyée par ZF ?
Hors ligne
C'est corrigé.
Merci pour l'option debug.
Je n'avais pas compris qu'il ffaut respecter le même nom de fichier pour la vue que pour l'action.
Hors ligne
Si tu fais "$this->render(); il faut avoir le même nom
sinon tu peux faire $this->render('toto'); qui cherchera toto.phtml pour rendre ton action userInfo()
Hors ligne
Pages: 1