#php #symfony #doctrine-orm
#php #symfony #doctrine-orm
Вопрос:
У меня следующая структура таблицы:
Совпадение (футбольный матч)
- ID
- Дата
- …
Оценка (одно совпадение имеет много оценок)
- Совпадение
- тип (перерыв, завершение, штрафы)
- значение (3: 2)
Мой yml для оценки выглядит следующим образом:
id:
match:
type: bigint
associationKey: true
column: Match
columnDefinition: bigint(20) unsigned NOT NULL COMMENT '@fk/sd_Match/id'
type:
type: string
length: 2
options:
fixed: true
И отношение:
manyToOne:
match:
targetEntity: EntityMatch
inversedBy: scores
joinColumns:
Match:
referencedColumnName: id
Проблема в том, что когда я выполняю поиск, findOneBy … я получаю эту ошибку:
Notice: Undefined index: Match
/var/www/libe/vendor/doctrine/orm/lib/Doctrine/ORM/Utility/IdentifierFlattener.php:92
/var/www/libe/vendor/doctrine/orm/lib/Doctrine/ORM/UnitOfWork.php:2501
/var/www/libe/vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/SimpleObjectHydrator.php:144
/var/www/libe/vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/SimpleObjectHydrator.php:69
/var/www/libe/vendor/doctrine/orm/lib/Doctrine/ORM/Internal/Hydration/AbstractHydrator.php:147
/var/www/libe/vendor/doctrine/orm/lib/Doctrine/ORM/Persisters/Entity/BasicEntityPersister.php:720
/var/www/libe/vendor/doctrine/orm/lib/Doctrine/ORM/EntityRepository.php:196
Кажется, проблема при использовании одного и того же столбца для обеих вещей.
Я попытался удалить совпадение из ключа, проблема в том, что объект score не загружает совпадение.
В этом случае, если я сделаю $score = $scoreRepo-> findOneBy(критерии); $score-> getMatch() // возвращает null, даже если в базе данных есть строки в обеих таблицах для построения отношения.
Есть идеи? Заранее спасибо!
Комментарии:
1. у вас нет столбца с именем Match . Проблемы с поиском в верхнем / нижнем регистре
2. на самом деле я делаю. Столбец в таблице имеет значение «Match», но свойство в сущности равно «match». Кстати, это старая структура