![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 186 Pomógł: 18 Dołączył: 2.09.2010 Ostrzeżenie: (0%) ![]() ![]() |
Mam dwie encje:
oraz:
Oraz kontroler:
I otrzymuję błąd: Kod Fatal error: Uncaught exception 'Doctrine\ORM\Mapping\MappingException' with message 'Single id is not allowed on composite primary key in entity Album\Entity\Song' in D:\xampp1.8.2\htdocs\testy\DoctrineCompositeForeignKey\vendor\doctrine\orm\lib\Doctrine\ORM\Mapping\MappingException.php on line 414 Czy to ja robię coś źle? Czy to jakieś dziwne ograniczenie doctrine? Ten post edytował ghost1511 5.11.2014, 14:15:44 |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 2 178 Pomógł: 596 Dołączył: 25.09.2009 Skąd: Piwniczna-Zdrój Ostrzeżenie: (0%) ![]() ![]() |
Problem zapewne pojawia się w tym miejscu:
Korzystamy tutaj z tablicy $killEmAllData, w której songs identyfikowane są jedynie przez title. Trzeba by było zatem zmienić strukturę danych:
Nie jestem również pewien kolejności wykonywanych działań. Wg dokumentacji https://github.com/doctrine/DoctrineModule/...any-association, najpierw należałoby utworzyć tablicę obiektów Song (jeśli takowe encje w bazie danych nie istnieją), a dopiero później można użyć hydratora, przy czym kolekcja $songs zostanie wypełniona automatycznie. Wtedy kod wyglądałby tak:
Przyjrzyj się dokładniej dokumentacji, którą możesz znaleźć pod odnośnikiem powyżej, bowiem Example 3 opisuje podobny przypadek, z tym, że Ty używasz klucza złożonego w połączeniu z kluczem obcym. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 10.10.2025 - 01:49 |