У меня возникла проблема с настройкой сопоставления сущностей в приложении silex.Silex and doctrine orm mapping - не обнаружено сопоставлений
регистрирующие услуги:
$app->register(new Silex\Provider\DoctrineServiceProvider(), array(
'db.options' => array(
'driver' => 'pdo_mysql',
'dbname' => 'blabla',
'host' => 'blabla',
'user' => 'blabla',
'password' => 'blabla',
'port' => '3306',
'charset' => 'utf8'
),
));
$app->register(new DoctrineOrmServiceProvider(), [
'orm.em.options.mappings' => [
[
'type' => 'simple_yml',
'namespace' => 'App\Entities',
'path' => __DIR__. '/Resources/orm/mappings/',
],
]
]);
ЦСИ/Ресурсы/ОРМ/отображения/User.orm.yml: сам
User:
type: entity
table: users
id:
id:
type: integer
generator:
strategy: AUTO
fields:
username:
type: string
email:
type: string
github_token:
type: string
github_token_created_at:
type: datetimetz
created_at:
type: datetimetz
updated_at:
type: datetimetz
И сущность класс находится в: SRC/Entities/User .php
cli-config.php файл:
<?php
require_once 'vendor/autoload.php';
$app = require_once 'src/app.php';
return \Doctrine\ORM\Tools\Console\ConsoleRunner::createHelperSet($app['orm.em']);
И я бегу следующую команду:
vendor/bin/doctrine orm:info
я получаю информацию об отсутствии отображений:
[Exception]
You do not have any mapped Doctrine ORM entities according to the current configuration. If you have entities or mapping files you should check your mapping configuration for errors`
Я 99% уверен, что пути устанавливаются в порядке, подключение к базе данных правильно, я понятия не имею, почему это не работает. Может ли кто-нибудь помочь мне в этом?
Потому что я не использую аннотации. Пространство имен для сущностей, а путь - для файлов yml. – matiit
Я не пытался эту конфигурацию. Вы проверили, что ваша автозагрузка работает? – Treemonkey
Работает автозагрузка. Я сбросил объект $ app ['orm.em'] в файле cli-config.php. Был экземпляр. Нет сообщений, не найденных в классе, и т. Д. – matiit