В настоящее время я пытаюсь реализовать Doctrine CouchDB Bundle в приложении Silex. В какой-то момент весь сайт заканчивается на 500/internal server error
в моем стеке dev. Установка контрольных точек и отладка их с помощью XDebug и PHPStorm пока не привела к каким-либо результатам. Журналы ошибок Apache пустые, журналы ошибок PHP также и error_reporting(-1);
все еще не дают никакого вывода. Вероятно, проблема заключается в использовании класса отражения.Doctrine Annotation failing
Все работает хорошо, до Я пытаюсь использовать CouchDB аннотаций из
use Doctrine\ODM\CouchDB\Mapping\Annotations as CouchDB;
и использовать их в моем документе
/** @CouchDB\Document */
class Station
{
/**
* @Index
* @Id
*/
private $id;
Если удалить CouchDB\
выше, все работает. Но если я удалю его и использую @Id(strategy="ASSIGNED")
, я столкнулся с той же проблемой.
Я попытался зарегистрировать аннотации несколькими способами без везения. @Ocramius предложил в чате, что я должен просто переопределить Autoloader, который хорошо работал с выходом за рамки некоторых других проблем, но не для этого (просто добавив его здесь, если кому-то это понадобится).
AnnotationRegistry::registerLoader(function($className) {
return class_exists($className);
});
Спасибо за ваш ответ. К сожалению, это не работает. Я не уверен, но, может быть, проблема в том, что я как-то не загрузил необходимый класс аннотации (маловероятно, поскольку я 'use'-включил его). Точка также заключается в том, что в CouchDB Annotations следует просто выровнять аннотации Doctrine по умолчанию. Так что - теоретически - он должен работать без 'CouchDB' и в« Индексе ». – kaiser