Исключение доктрины — [Doctrine \ ORM \ Mapping \ MappingException]

Привет, я новичок в Symfony.

Я пытаюсь создать сущности из существующей базы данных с доктриной.
Когда я запускаю эту команду:

php bin/console doctrine:mapping:import --force AppBundle xml

Я получаю это исключение:

[Учение \ ORM \ Mapping \ MappingException] Имущество «магазина» в «Буге» уже заявлено, но оно должно быть объявлено только один раз

Я пытался найти другие решения, но ничего не нашел.
Как я могу решить эту проблему?

Вот как MySQL Workbench создает мою таблицу:

CREATE TABLE IF NOT EXISTS `db`.`bug` (
`id_bug` INT(11) NOT NULL AUTO_INCREMENT,
`bug_name` VARCHAR(200) NOT NULL,
`comment` VARCHAR(1000) NOT NULL,
`status` INT(11) NOT NULL DEFAULT '0',
`customer_id` VARCHAR(255) CHARACTER SET 'utf8' NOT NULL,
`shop_id` VARCHAR(255) CHARACTER SET 'utf8' NOT NULL,
`admin_id` VARCHAR(255) CHARACTER SET 'utf8' NOT NULL,
PRIMARY KEY (`id_bug`),
INDEX `fk_bug_customer1_idx1` (`customer_id` ASC),
INDEX `fk_bug_shop1_idx` (`shop_id` ASC),
INDEX `fk_bug_admin1_idx1` (`admin_id` ASC),
CONSTRAINT `fk_bug_customer1`
FOREIGN KEY (`customer_id`)
REFERENCES `db`.`customer` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_bug_shop1`
FOREIGN KEY (`shop_id`)
REFERENCES `db`.`shop` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION,
CONSTRAINT `fk_bug_admin1`
FOREIGN KEY (`admin_id`)
REFERENCES `db`.`admin` (`id`)
ON DELETE NO ACTION
ON UPDATE NO ACTION)
ENGINE = InnoDB
DEFAULT CHARACTER SET = latin1;

Я работаю в Symfony 3.3, MySQL и PHP7.

Благодарю.

0

Решение

Были две проблемы:

  1. Прежде всего, была повторная связь на том же объекте
  2. Это была не единственная проблема. Мы заметили, что в доктрине возникают проблемы, когда есть первичный ключ, который также является внешним ключом, поэтому мы добавили новое поле Я бы для первичного ключа.
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]