#symfony
#symfony
Вопрос:
после выполнения php app / console doctrine:schema:create я получаю сообщение «Нет классов метаданных для обработки»..
Мои шаги заключаются в следующем:
Загрузите sf2, создайте пакет Jander / ClarBlundle и создайте Jander/ClarBundle/Resources/config/doctrine/Jander.ClarBundle.Entity.User.orm.dcm.yml с этим содержимым:
JanderClarBundleEntityUser:
type: entity
table: user
id:
id:
type: integer
generator:
strategy: AUTO
fields:
name:
type: string
length: 255
У меня нет никаких проблем с doctrine: database:create.
Есть идея?
sf2 beta1.
Javier
Ответ №1:
Проблема заключается в пути к вашему файлу YAML. В Symfony2 beta2 (скоро выйдет) будет внесено несколько изменений для упрощения использования соглашения, но в beta1 ваш файл entity YAML должен находиться в path:
Jander/ClarBundle/Resources/config/doctrine/metadata/orm/Jander.ClarBundle.Entity.User.dcm.yml
Обратите внимание на metadata/orm/
в пути к файлу и на .dcm.yml
расширение вместо .orm.yml
.
То есть ваша текущая настройка должна работать после развертывания beta2, но пока вам все равно придется использовать longhand.
Ссылка из блога Symfony2 здесь.
Ответ №2:
Попробуйте очистить кэш:
php app/console cache:clear
Комментарии:
1. очистка кэша сработала для меня, потому что объект, который я сгенерировал, был недопустимым (имел пробелы в именах полей) (упс)
Ответ №3:
Эта проблема возникает, когда у вас что-то не так в ваших файлах YML / XML / Entity. Возможные пути или имена неправильны.