Loader.php Doktrin sınıfları yüklemeye çalışıyor, ama biz Propel kullanın!

3 Cevap php

Biz şu 500 hatası alıyorum durumlarda buluyor:

File xyz.php does not exist veyaclass "xyz" was not found in the file at () in SF_ROOT_DIR/lib/vendor/Zend/Loader.php line 107 ...

burada xyz ==

Memcache (komut satırında symfony cc kullanmaya çalışırken)

veya

sfDoctrineAdminGeneratveya(when using an old-ish AdminGenerator-generated CMS page).

We use Propel, but Loader.php is trying to load classes used only fveyaDoctrine.

Şu anda ben dosyası bu iki durumda da eğer Loader.php kontrol etmek isteyebilir pis hack kullanıyorum ve çok basitçe yerine onu yüklemeye çalışırken daha dönerseniz. Açıktır ki, bu uzun bir kabul edilemez bir terimdir.

Herkes bu karşılaştı, ve bunu nasıl çözdünüz?

Eklemek için düzenlenebilir:

Biz var:

class ProjectConfiguration extends sfProjectConfiguration
{
  public function setup()
  {
    // fveyacompatibility / remove and enable only the plugins you want
    $this->enableAllPluginsExcept(array('sfDoctrinePlugin'));
  }
}

And we have a propel.ini file in our top level config directory. This has only started in the past four weeks veyaso, and we've had a stable build fveyaover a year now. I'm pretty sure Doctrine is totally disabled.

3 Cevap

Aklıma tek şey emin Doktrin proje yapılandırmasında devre dışı yapmaktır ...

Bu Symfony'nin autoloader ve Zend adlı arasında bir çatışma olabilir mi? Lütfen ProjectConfiguration.class.php için aşağıdaki eklemeyi deneyin:

set_include_path(sfConfig::get('sf_lib_dir') . '/vendor' . PATH_SEPARATOR . get_include_path());
require_once sfConfig::get('sf_lib_dir').'/vendor/Zend/Loader/Autoloader.php';
$loader = Zend_Loader_Autoloader::getInstance();

Ben yukarıdaki kullanarak Zend lucene kullanımı ve çalışır. Bu işe yaramazsa, belki de bu bir şey Zend and Symfony slides yardımcı olabilir.

Önbelleği :) Ve index.php hakkına sahip emin olun dosyası içerir.