Доктрина zend zf3 orm сопоставление сущностей

Проблемы с созданием объектов PHP из базы данных с таблицами. Я пытаюсь сгенерировать сущности, методы получения / установки и любые связанные аннотации из таблиц, уже определенных в базе данных.

Я следил за несколькими учебными пособиями по доктрине, но не могу заставить объекты успешно сгенерировать

Среда (windows xampp PHP 7.1): загружено скелетное приложение ZendFramework 3.

"zendframework/zend-component-installer" : "^1.0 || ^0.7 || ^1.0.0-dev@dev",
"zendframework/zend-mvc" : "^3.0.1",
"zfcampus/zf-development-mode" : "^3.0",
"zf-commons/zfc-user" : "^3.0",
"zendframework/zend-log" : "^2.9",
"doctrine/doctrine-orm-module" : "^1.1",
"zendframework/zend-json" : "^3.1"

из "App_Root", выполняя команду ниже, генерируются классы PHP со значениями сопоставления переменных => полей для каждой таблицы (обратите внимание, что каталог соответствует определенной структуре пространства имен):

./vendor/doctrine/doctrine-module/bin/doctrine-module orm:convert-mapping --namespace="ModuleName\\Entity\\" --force --from-database annotation ./EXPORT

(файлы, созданные в / EXPORT / ModuleName / Entity)

Все идет нормально. Теперь пытаемся сгенерировать геттеры и любые дополнительные данные аннотации, используя

./vendor/doctrine/doctrine-module/bin/doctrine-module orm:generate:entities ./EXPORT/ModuleName/Entity

Производит:

[OK] Нет классов метаданных для обработки.

На протяжении всей жизни я не могу найти никакой конфигурации с orm: generate: сущностей, которые указывают на какую-либо форму классов метаданных ... Есть ли какой-то шаг, который я пропустил?

Регулировка не имеет никакого эффекта. Обратите внимание, что для первоначального запуска мне пришлось настроить базовую конфигурацию, чтобы даже подключиться к базе данных (vendor / doctrine / doctine-orm-module / config / module.config.php), т.е. сценарий, очевидно, не получал никакой конфигурации из скелет приложения MVC. Я пробовал установить ZFTool, у которого есть свои проблемы при запуске из командной строки, поэтому для меня это был тупик (в любом случае, в zf3)

Пока что у меня есть варианты:

  1. Найдите способ сгенерировать: сущности для запуска через командную строку с текущими инструментами
  2. Найдите способ запустить инструмент ORM в контексте приложения-скелета ZF3, пытающегося использовать конфигурацию
  3. Придерживайтесь по крайней мере классов аннотаций, созданных выше, и вручную добавьте геттеры / сеттеры и продолжайте ... (не то, что я хочу сделать)
  4. Сделайте дамп доктрины и используйте библиотеки / Zend / Db либо с TableGateway, либо с объектами клиента Select () с помощью DBAdapter.

http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/tools.html#configuration

https://samsonasik.wordpress.com/2013/04/10/zend-framework-2-generate-doctrine-entities-from-existing-database-using-doctrinemodule-and-doctrineormmodule/

Как сгенерировать сущности из базы данных схема с использованием doctrine-orm-module и zf2

создание сопоставленных объектов ORM без cli?

Любая помощь с разбивкой по ступеням была бы замечательной. Документы и сообщения в Интернете неэффективны для меня, возможно, потому, что мне не хватает какой-то простой конфигурации или директивы ...


person JI-Web    schedule 07.02.2018    source источник


Ответы (1)


Не могли бы вы попробовать запустить приведенную ниже команду и посмотреть, поможет ли это. Я внес в него небольшие изменения.

./vendor/doctrine/doctrine-module/bin/doctrine-module orm:generate:entities ./EXPORT --generate-annotations=true

Если вышеперечисленное не сработает, на всякий случай вы можете попробовать и этот.

./vendor/doctrine/doctrine-module/bin/doctrine-module orm:generate:entities ./EXPORT/ModuleName --generate-annotations=true
person Kamal Soni    schedule 14.02.2018
comment
@ JI-Web Не могли бы вы прокомментировать, сработало ли это для вас? - person Kamal Soni; 15.02.2018