Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 12-05-2009 20:30:32

m1b
Membre
Date d'inscription: 04-05-2009
Messages: 44

Débutant : Problème tutorial avec MVC

Hello à tous,

Je suis en train de commencer avec le framework et je suis ce tutorial (peut-être certains d'entre-vous l'ont même réalisé)
http://www.reseaucerta.org/cotecours/cc … ma-general

Par contre au point 14.4 il est mentionné ceci dans le Controller ( ResultatsController)

Code:

 
$d = new Diplome($i, $idResponsable, 'lib_'.$i, ($i+1)*2);

Diplome = le modèle et il n'arrive pas à être invoqué car la page de la vue index.phtml me retourne :

Code:

Fatal error: Class 'Diplome' not found in

ce qui me parait logique car il ne peut pas connaitre la classe...

Dans mon bootstrap j'ai mis ceci

Code:

set_include_path(
    APPLICATION_PATH . '/../library' 
    . PATH_SEPARATOR . APPLICATION_PATH . '/models/'
    . PATH_SEPARATOR . get_include_path()
);

Ouch... dur dur ce début ^^

Hors ligne

 

#2 12-05-2009 22:42:07

sekaijin
Membre
Date d'inscription: 17-08-2007
Messages: 1137

Re: Débutant : Problème tutorial avec MVC

il faut soit que tu mette l'autoload soit que tu charge la classe

Hors ligne

 

#3 12-05-2009 22:46:14

m1b
Membre
Date d'inscription: 04-05-2009
Messages: 44

Re: Débutant : Problème tutorial avec MVC

En fait il fait l'autoload mais je me demande si ce que j'ai mis est suffisant, je vais encore rechercher un peu sur l'autoload

Code:

// Définition de l'emplacement
define('APPLICATION_PATH', realpath(dirname(__FILE__) . '/application/'));
set_include_path(
    APPLICATION_PATH . '/../library' 
    . PATH_SEPARATOR . APPLICATION_PATH . '/models/'
    . PATH_SEPARATOR . get_include_path()
);
error_reporting(E_ALL|E_STRICT);


require_once('Zend/Loader/Autoloader.php');
require_once('Zend/Loader/Autoloader/Interface.php');
Zend_Loader_Autoloader::getInstance(); 

$params = array(
    'host'           => '127.0.0.1',
    'username'       => 'root',
    'password'       => '',
    'dbname'         => 'tutoMvc',
    'options'        => ''
);

$db = Zend_Db::factory('pdo_mysql', $params);
$db->getConnection();

Hors ligne

 

#4 12-05-2009 23:23:44

m1b
Membre
Date d'inscription: 04-05-2009
Messages: 44

Re: Débutant : Problème tutorial avec MVC

Constatation c'est que si je fais le chargement manuellement en faisant :

Code:

Zend_Loader::loadClass('Diplome');

Alors la classe se charge... et ça foncitonne. Comme si l'Autoload ne se faisait pas, est-ce qu'il y a pas quelque chose du style à respecter exemple appeler toutes ses classes Zend_Classe.php

Hors ligne

 

#5 13-05-2009 04:48:08

probitaille
Membre
Lieu: Montréal
Date d'inscription: 20-04-2009
Messages: 336
Site web

Re: Débutant : Problème tutorial avec MVC

Essaye ce bout de code:

Code:

include "Zend/Loader.php";
Zend_Loader::registerAutoload();

Hey bienvenue sur le forum Zend wink

Hors ligne

 

#6 13-05-2009 13:24:58

mikaelkael
Administrateur
Lieu: Donges
Date d'inscription: 18-06-2007
Messages: 1176
Site web

Re: Débutant : Problème tutorial avec MVC

Hello,

@probitaille: pas en 1.8, c'est cei qu'il faut

Code:

require_once('Zend/Loader/Autoloader.php');
Zend_Loader_Autoloader::getInstance()->setFallbackAutoloader(true);

A+


Less code = less bugs
Contributeur ZF - ZCE - ZFCE - Doc ZF (CHM & PDF) - Vice-trésorier AFUP 2011
Ubuntu 11.04 - ZendServer

Hors ligne

 

#7 13-05-2009 18:14:38

m1b
Membre
Date d'inscription: 04-05-2009
Messages: 44

Re: Débutant : Problème tutorial avec MVC

Merci pour votre aide,

Le require_once ne retourne pas de message d'erreur (pourtant j'ai flag_error mode on) ce qui veut dire que le chargement du fichier s'effectue.

En faisant manuellement le chargement de la class cela fonctionne.

Personnellement j'arrive au stade ou je me dis que si on veut utiliser l'autoload il faut utiliser un préfixe particulier du style Zend_maclass.php mais je vois que cela ne fonctionne pas non plus.

C'est assez particulier..

Dernière modification par m1b (13-05-2009 18:15:00)

Hors ligne

 

#8 13-05-2009 18:28:04

m1b
Membre
Date d'inscription: 04-05-2009
Messages: 44

Re: Débutant : Problème tutorial avec MVC

J'ai consulté encore la doc, en ajoutant ceci ça fonctionne à présent smile

Code:

$autoloader->setFallbackAutoloader(true);

merci pour votre aide

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