Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony4][SF4][SF] Sortowanie danych na liście rozwijalnej formularza
Forum PHP.pl > Forum > PHP > Frameworki
damianooo
Próbuję posortować dane (lista zespołów piłkarskich) w polu (lista rozwijalna) formularza dla Meet (spotkania)
Sortowanie ma być po id ligi (league)

Encja Meet jest powiązana relacją z encją Team:

  1. /**
  2.   * @ORM\ManyToOne(targetEntity="App\Entity\Team")
  3.   * @ORM\JoinColumn(nullable=false)
  4.   */
  5. private $hostTeam;


A encja Team z encją League:
  1. /**
  2.   * @ORM\ManyToOne(targetEntity="App\Entity\League", inversedBy="teams")
  3.   * @ORM\JoinColumn(nullable=false)
  4.   */
  5. private $league;



Kod formularza :

  1. class MeetType extends AbstractType
  2. {
  3. public function buildForm(FormBuilderInterface $builder, array $options)
  4. {
  5. $builder
  6. ->add('name' , null, ['label' => 'Nazwa'])
  7. ->add('hostGoals' , null, ['label' => 'Bramki gospodarz'])
  8. ->add('guestGoals' , null, ['label' => 'Bramki gość'])
  9. ->add('term' , null, ['label' => 'Termin meczu'])
  10. ->add('position' , null, ['label' => 'Pozycja meczu'])
  11. ->add('hostTeam' , null, ['label' => 'Gospodarz'])
  12.  
  13. ->add('hostTeam', EntityType::class, [
  14. 'class' => Team::class,
  15. 'query_builder' => function (EntityRepository $er) {
  16. return $er->createQueryBuilder('t')
  17. ->innerJoin('t.league', 'l')
  18. ->orderBy('l.id', 'ASC');
  19. },
  20. 'label' => 'Gospodarz',
  21. ])



Mam taki błąd:

Argument 1 passed to App\Form\MeetType::App\Form\{closure}() must be an instance of App\Form\EntityRepository, instance of App\Repository\TeamRepository given, called in C:\xampp\htdocs\ligatyperow2\vendor\symfony\doctrine-bridge\Form\Type\EntityType.php on line 32


Mogę prosić o podpowiedź co mam źle ?

PS. Sortowanie na razie może być po czymkolwiek bylebym wiedział co mam źle w obecnej implementacji kodu.



ohm
Wg błędu musisz dodać use dla EntityRepository, bodajże
  1. use Doctrine\ORM\EntityRepository;
Salvation
To co wyżej, to może być dobry kierunek. Jak zaimportowałeś klasę `EntityRepository` w swojej MeetType::class?
damianooo
no fakt , dzięki za podpowiedź.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2024 Invision Power Services, Inc.