J'ai un problème étrange. Je veux éteindre la génération automatique de mes proxies dans la doctrine 2. J'ai trouvé cette ligne de code qui devrait faire (et fait) l'astuce: sur mon environnement de test Les proxies sont situées. à application / proxies em>. c.-à-don: p> Lorsque je suis sur l'environnement en direct, mon code cherche soudainement les proxies à applications / proxies / proxies em> ce qui n'est pas le réel Emplacement. P> Je comprends que cela a quelque chose à voir avec l'espace de noms, mais je ne comprends pas pourquoi il se comporte différemment lors de l'utilisation de la méthode SetAututOtogénereProxie EM>. P> TOUTES IDÉES? P> J'ai généré les nouveaux proxies à l'aide de: P> $config->setAutoGenerateProxyClasses(DEVELOPMENT);
3 Réponses :
Je ne pense pas que les proxies autogénérés soient soins. P>
Au lieu de pousser les proxy autogénérés à la production, vous devriez probablement DOCTRINE ORM: générer-proxies code>, que je suppose les mettre à la place de votre code de production est configuré pour les rechercher. P >
Vous développez-vous sur OS X et déployez-vous à Linux? Le système de fichiers du système d'exploitation d'OS X est un cas insensible em>. Donc, je vais souvent rencontrer un problème dans lequel je crie le cas d'une classe et qu'il court et passe très bien dans l'environnement local, mais des étouffements sur notre serveur. P>
Donc, dans ce cas, dans OS X, la "proxie" de noms est capable de résoudre "/ proxy", mais en production, il ne peut pas trouver le dossier de la classe et la crée sous "/ proxy / proxies" . p>
Si vous renommez le dossier sur quelque chose appelé "/ TEMP", vous réaliserez la différence entre le chemin et l'espace de noms. P>
Le chemin est le chemin absolu de l'annuaire que les proxies sont générés. L'espace de noms est nécessaire pour vous permettre de configurer comment un automoduer récupère ces entités. P>
Le chemin de votre cas doit être quelque chose comme "Proxies / Proxies" et l'espace de noms est alors "Proxies". Votre autoloader doit être configuré pour écouter le préfixe d'espace de noms "Proxies" sur le répertoire "Proxies /". p>
C'est toute l'humeur avec la doctrine 2 RC1, nous avons trouvé un moyen de charger explicitement un chemin de proxy sans l'aide d'un automoduer sans frais supplémentaires. L'espace de noms de proxy configuratino est donc nécessaire pour s'assurer que aucune autre classe n'est dans la même espace de noms que les proxies. P>
Je connais la différence entre un espace de noms et un chemin :). Lisez mon message pour le vrai problème. Merci pour votre réaction cependant.
Essayez de définir le répertoire des proxies pour simplement AppPePathsystem. Il devrait récupérer l'espace de noms des «proxies» à partir de là.