나는 기존 데이터베이스의 테이블에서 엔티티를 만들려고 :Symfony3 여러 엔티티 관리자와 연결
php bin/console doctrine:mapping:import --force AppBundle yml --filter="someTable"
그러나 메시지가 나타 없습니다 나타났다 :
표 someTable 더있다 기본 키. Doctrine은 기본 키가없는 테이블에서 역 공학 엔지니어링을 지원하지 않습니다.
내가 확인하고 DB에서 PK가없는 테이블이 있었는데 (나는 변경할 수 없다). 그래서 나는이 페이지를 읽어 http://symfony.com/doc/current/doctrine/multiple_entity_managers.html 을 ... 그리고 GitHub의에이 솔루션을 시도 : https://github.com/doctrine/DoctrineBundle/issues/441
내 config.yml는 다음과 같이이다 :
doctrine:
dbal:
default_connection: default
connections:
default:
driver: pdo_mysql
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
mapping_types:
enum: string
forMapping:
driver: pdo_mysql
host: "%database_host%"
port: "%database_port%"
dbname: "%database_name%"
user: "%database_user%"
password: "%database_password%"
charset: UTF8
schema_filter: someTable
orm:
auto_generate_proxy_classes: "%kernel.debug%"
naming_strategy: doctrine.orm.naming_strategy.underscore
auto_mapping: true
default_entity_manager: default
entity_managers:
default:
connection: default
mappings:
AppBundle:
type: yml
dir: Resources/config
forMapping:
connection: forMapping
mappings:
AppBundle:
type: yml
dir: Resources/config
을하지만 내가하려고하면
php bin/console doctrine:mapping:import --em=forMapping --filter="someTable" AppBundle yml
다음과 같이 표시됩니다.
[InvalidArgumentException] "forMapping"이라는 Doctrine ORM 관리자가 존재하지 않습니다.
캐시를 비우지 않지만. 어떤 도움을 주셔서 감사합니다.
엠씨
auto_mapping 줄을 제거하십시오. – Cerad