2011-05-01 6 views
1

Une fois que je fais:Zend Framework - Créer db table de base de données - Erreur

zf -p create dbtable.from-database 

Je reçois:

Impossible redéclarer Zend_Loader de classe dans /home/user/public_html/proj.dev /library/Zend/Loader.php en ligne 31

Si nous changeons le fichier application.ini généré et nous avons commenté la ligne suivante:

;includePaths.library = APPLICATION_PATH "/../library" 

Cela a semblé fonctionner, et puisque nous avons déjà cela sur votre dossier public/index.php, il semble que cela est autorisé à commenter.

Cependant, je ne comprends pas quelle est la relation entre l'erreur fournie et la solution chanceuse.

Est-ce que quelqu'un sait pourquoi cela est arrivé?

+0

La même chose à dire. Va apprendre, et sois un maître. Allez sur une étude approfondie pendant 10 ans, et gardez toujours à jour. Aller à des séminaires, acheter des livres, pratiquer tous les jours. À la fin, vous aurez votre réponse. Eh bien ... je le sais. Pourtant, le stackoverflow existe. :) – MEM

Répondre

1

Habituellement, cette erreur se produit lorsque include_path est réglé deux fois! Vous avez déjà défini le include_path ailleurs.

+0

Cela semble être une implémentation zend_tool cli miss alors. Je n'ai jamais ajouté d'inclusion sur aucun de ces endroits et j'ai seulement utilisé l'outil zend pour construire cette structure. Quelque part pendant le processus, le fichier d'index généré ou le fichier application.ini généré crée un chemin d'inclusion qu'ils ne devraient pas. Je présume que cela se produira souvent lorsque d'autres ppl commenceront à utiliser souvent l'outil zend cli. – MEM

1

j'ai eu la même erreur quand j'ai essayé de courir zf create dbtable.from-database

découvert ce que la question était. Ma commande zf était en cours d'exécution à partir /usr/local/zend/share/ZendFramework/library/Zend mais mon projet avait sa propre Zend Framework situé à /Applications/MAMP/htdocs/NPT2/library/Zend

Ce que je l'ai fait pour corriger l'erreur était supprimer le dossier Zend dans le dossier bibliothèque de mon projet, puis mis include_path dans mon php.ini fichier à pointer vers/usr/local/zend/share/ZendFramework/library

Voir si cela fonctionne pour vous.

+0

Salut, pourquoi dites-vous "supprimer le dossier Zend dans le dossier de la bibliothèque de mon projet, puis définir include_path dans mon fichier php.ini pour pointer vers/usr/local/zend/share/ZendFramework/library" lorsque le tutoriel Quick Start dans Zend Framework traite différemment les états? Quand les docs sont-ils corrects alors? http://framework.zend.com/manual/en/learning.quickstart.create-project.html#learning.quickstart.create-project.create-project – marienke

+0

@Enke Le point est de n'avoir qu'une seule installation de framework Zend. Vous pouvez également supprimer celui situé dans/usr/local/zend/share/ZendFramework/library et n'en avoir qu'un dans le dossier de votre bibliothèque de projet. Je ne sais pas si l'un est meilleur que l'autre. J'aime avoir juste une installation centralisée, de cette façon si je la mets à jour, alors chaque application Zend que j'ai a la dernière version. Le localiser dans le dossier de la bibliothèque de votre projet est cependant plus simple à configurer, ce qui est probablement la raison pour laquelle le guide de démarrage rapide le suggère. –

Questions connexes