Начну про мало известную особенность - у многих даже маленьких команд есть возможность указывать аргументы и опции, чтобы узнать их используй аргумент: -h
Проверим валидны ли анотации в сущностях (схему бд не смотрим):
vendor/bin/doctrine orm:validate-schema --skip-sync
Проверим валидны ли анотации в сущностях (сверим с схемой бд):
vendor/bin/doctrine orm:validate-schema
внимание: следующая ошибка говорит о том, что описание сущностей отличается от фактической схемы бд:
[ERROR] The database schema is not in sync with the current mapping file.
Чтобы посмотреть отличия (показывает то, чего не хватает в бд, но есть в анотациях - выводит SQL):
vendor/bin/doctrine orm:schema-tool:update --dump-sql
внимание: таблица может существовать под именем с разделителем _
Просмотр подробной информации о сущности, очень помогает в нахождении именования полей:
vendor/bin/doctrine orm:mapping:describe 'SomeEntityName'
зачем: например получая ошибку "There is no column with name 'instagramUserId' on table 'SomeEntityName'." я понял, что doctrine хочет, чтобы обращаясь к полю instagram_user_id я писал instagramUser_id (не очень логично мне кажется, но данная консольная команда помогла узнать угодное доктрине именование).
Комментарии
Комментариев пока нет.