2013-02-19 3 views
1

Я использую CodeIgniter 2 с доктриной 2, и это проект, который я работаю вдоктрина 2 с CodeIgniter 2 класса Нет метаданных для обработки

https://github.com/wildlyinaccurate/CodeIgniter-2-with-Doctrine-2

Мне нужно создать классы сущностей из существующей базы данных

так я настроил доктрину находиться в режиме разработки, и я установить базу данных на CodeIgniter

после того, что я пишу эту команду

PHP Doctrine ORM: модели преобразования-отображения аннотаций --from-базы данных/генерироваться

классов, порожденных правильно из базы данных, но без какого-либо метода, после того, что я пишу эту команду для создания сущностей

PHP Doctrine ORM: порождающие-субъекты --regenerate-лица = «1»/модели генерируется

, но я считаю, это ошибка «нет классов метаданных не обрабатывать»

Спасибо.

+0

Вы должны установить правильную конфигурацию драйвера отображения. Создание сопоставления не означает, что они уже находятся в ожидаемом месте. – Ocramius

+0

не могли бы вы привести мне пример – AbdelMalek

ответ

1

В файлах сущностей, сгенерированных, вы должны удалить «использовать Doctrine \ ORM \ Mapping как ORM;»

и заменить "ORM \" с ""

+0

это работает для меня Я использую zf1, интегрированный с доктриной 2 – 3ehrang

0

В Doctrine.php в папке библиотек добавить эти строки, чтобы загрузить драйвер:

$driver = new \Doctrine\ORM\Mapping\Driver\PHPDriver(APPPATH.'models/Mappings'); 
$config->setMetadataDriverImpl($driver); 

Создать свой Mapping files. И generate entities:

php cli-doctrine.php orm:generate-entities models --generate-annotations=true 

Теперь вы можете создавать таблицы в вашей БД:

php cli-doctrine.php orm:schema-tool:create 
0

Большинство доктрины документации и учебники не является правильным. Вы должны использовать эту команду:

php doctrine orm:generate:entities --generate-annotations=true models/generated 
Смежные вопросы