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

Zend Framework PHP Discussion :

Erreur - Autoload et models


Sujet :

Zend Framework PHP

  1. #1
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 42
    Par défaut Erreur - Autoload et models
    Bonjour,

    Je suis confronté à un problème sur lequel je m'arrache les cheveux depuis une journée, d'autant plus qu'il me semble bête.

    J'ai une classe Model_TBook dans le répertoire models (lui-même dans application). Et je n'arrive pas à la charger via l'autoload : class Model_TBook not found in BookController.php (à l'endroit où je veux créer une instance de cette classe).

    models/TBook.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    <?php
    class Model_TBook extends Zend_Db_Table_Abstract
    {
    	protected $_name = 'livres';
    	protected $_primary = 'id';
    }
    ?>
    public/index.php
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    //configuration de l'include_path PHP pour l'autoload
    set_include_path(get_include_path() . 
    		PATH_SEPARATOR.$appPath. 
    		PATH_SEPARATOR.$rootPath.DIRECTORY_SEPARATOR.'library'. 
    		PATH_SEPARATOR.$appPath.DIRECTORY_SEPARATOR.'models');
     
    //chargement automatique
    require_once 'Zend/Loader/Autoloader.php';
    $autoLoader = Zend_Loader_Autoloader::getInstance();
    $autoLoader->registerNamespace('Model_');	//l'espace (models) des modèles
    J'ai tenté beaucoup de choses du côté des Zend_Application_Module_Autoloader et autres Zend_Loader_Autoloader_Resource, mais sans succès (ou le même message "not found", ou une erreur fatale d'apache). D'autant plus étonnant que le nommage en "Model_" semble intégré par défaut.

    Merci d'avance

  2. #2
    Modérateur

    Avatar de MaitrePylos
    Homme Profil pro
    DBA
    Inscrit en
    Juin 2005
    Messages
    5 505
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : DBA
    Secteur : Service public

    Informations forums :
    Inscription : Juin 2005
    Messages : 5 505
    Par défaut
    J'ai eu le même souci, réglé grâce à cette fucntion dans le bootstrap.php

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    protected function _initAutoload()
        {
            $moduleLoader = new Zend_Application_Module_Autoloader(array(
                'namespace' => '', 
                'basePath'  => APPLICATION_PATH));
            return $moduleLoader;        
        }

  3. #3
    Membre averti
    Inscrit en
    Juin 2004
    Messages
    42
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 42
    Par défaut
    Merci. Finalement j'ai trouvé un autre moyen simple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    //chargement automatique
    require_once 'Zend/Loader/Autoloader.php';
    $autoLoader = Zend_Loader_Autoloader::getInstance();
     
    $autoloader = new Zend_Application_Module_Autoloader(array(
                'namespace' => 'Default_',
                'basePath'  => $appPath,
            ));
    Avant, ce code créait une exception dans Apache lui-même. Maintenant que j'ai mis à jour xampp, ça marche et j'obtiens le résultat désiré, en nommant les classes Default_Model_... .

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/03/2012, 10h56
  2. [1.x] Erreur : The "X" model has to "Y" relation.
    Par Nico_F dans le forum Symfony
    Réponses: 4
    Dernier message: 09/05/2011, 10h43
  3. [ZF 1.10] Autoload et models
    Par ToxiK dans le forum MVC
    Réponses: 4
    Dernier message: 23/02/2011, 11h07
  4. [1.x] Erreur propel-build-model dans schema.yml?
    Par charliejo dans le forum Symfony
    Réponses: 2
    Dernier message: 19/10/2009, 14h07
  5. erreur autoload librairie httpclient
    Par saturn1 dans le forum Général Java
    Réponses: 9
    Dernier message: 20/07/2009, 01h24

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