Я новичок в symfony4, так что извините, если мой вопрос глуп, но я работаю над этой проблемой три дня, не найдя решения.Итак, у меня есть сущность "Professionnel" и сущность "Coordonnees", и я хочу визуализировать в виде таблицы с профессионалами и их местоположением.Он уже работает с двумя другими классами в моем приложении Участники и Спонсоры.Для моей сущности "Professionnel" у меня есть эта ошибка: Ошибка возврата
Это моя сущность "Professionnel":
<?php
namespace App\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\Common\Collections\Collection;
use Doctrine\ORM\Mapping as ORM;
/**
* @ORM\Entity(repositoryClass="App\Repository\ProfessionnelRepository")
*/
class Professionnel
{
/**
* @ORM\Id()
* @ORM\GeneratedValue()
* @ORM\Column(type="integer")
*/
private $id;
/**
* @ORM\Column(type="string", length=255)
*/
private $nomProfessionnel;
/**
* @ORM\Column(type="string", length=255)
*/
private $prenomProfessionnel;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
private $fonctionProfessionnel;
/**
* @ORM\Column(type="text", nullable=true)
*/
private $observationsProfessionnel;
/**
* @ORM\Column(type="string", length=50, nullable=true)
*/
private $titreProfessionnel;
/**
* @ORM\ManyToOne(targetEntity="App\Entity\Coordonnees")
*/
private $coordonnees;
public function getId()
{
return $this->id;
}
public function getNomProfessionnel(): ?string
{
return $this->nomProfessionnel;
}
public function setNomProfessionnel(string $NomProfessionnel): self
{
$this->nomProfessionnel = $NomProfessionnel;
return $this;
}
public function getPrenomProfessionnel(): ?string
{
return $this->prenomProfessionnel;
}
public function setPrenomProfessionnel(string $PrenomProfessionnel): self
{
$this->prenomProfessionnel = $PrenomProfessionnel;
return $this;
}
public function getFonctionProfessionnel(): ?string
{
return $this->fonctionProfessionnel;
}
public function setFonctionProfessionnel(?string $FonctionProfessionnel): self
{
$this->fonctionProfessionnel = $FonctionProfessionnel;
return $this;
}
public function getObservationsProfessionnel(): ?string
{
return $this->observationsProfessionnel;
}
public function setObservationsProfessionnel(?string $ObservationsProfessionnel): self
{
$this->observationsProfessionnel = $ObservationsProfessionnel;
return $this;
}
public function getTitreProfessionnel(): ?string
{
return $this->titreProfessionnel;
}
public function setTitreProfessionnel(?string $TitreProfessionnel): self
{
$this->titreProfessionnel = $TitreProfessionnel;
return $this;
}
public function getCoordonnees(): ?Coordonnees
{
return $this->coordonnees;
}
public function setCoordonnees(?Coordonnees $coordonnees): self
{
$this->coordonnees = $coordonnees;
return $this;
}
}
Мой ProfessionnelRepository
<?php
namespace App\Repository;
use App\Entity\Professionnel;
use Doctrine\Bundle\DoctrineBundle\Repository\ServiceEntityRepository;
use Symfony\Bridge\Doctrine\RegistryInterface;
/**
* @method Professionnel|null find($id, $lockMode = null, $lockVersion = null)
* @method Professionnel|null findOneBy(array $criteria, array $orderBy = null)
* @method Professionnel[] findAll()
* @method Professionnel[] findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null)
*/
class ProfessionnelRepository extends ServiceEntityRepository
{
public function __construct(RegistryInterface $registry)
{
parent::__construct($registry, Professionnel::class);
}
public function getProEtAdresses(): array
{
$conn = $this->getEntityManager()->getConnection();
$sql = '
SELECT *
FROM coordonnees
INNER JOIN `professionnel`
ON `professionnel`.`coordonnees_id`= `coordonnees`.`id`
';
$stmt = $conn->prepare($sql);
$stmt->execute();
}
Мой контроллер
<?php
// GestionASM17/src/Controller/ProfessionnelsController.php
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;
use App\Entity\Coordonnees;
class ProfessionnelsController extends Controller
{
public function afficherProfessionnels()
{
//Récupère sous forme de tableau les Professionnels et leurs adresses
$ListeProEtAdresse = $this->getDoctrine()
->getRepository(Professionnel::class)
->getProEtAdresse();
return $this->render('GestionASM17/professionnels.html.twig', array(
'ListeProEtAdresse'=>$ListeProEtAdresse
));
}
public function detailProfessionnels($id)
{
//Récupère les données du Professionnel passé en paramètre dans une instance de professionnel
$Pro = $this->getDoctrine()
->getRepository(Professionnel::class)
->find($id);
// Récupère les coordonnées du Professionnel passé en paramètre
$Coordonnees = $this->getDoctrine()
->getRepository(Coordonnees::class)
->find($Pro->getCoordonnees());
//Renvoi de la vue
return $this->render('GestionASM17/detailProfessionnels.html.twig', array(
'Pro'=>$Pro ,
'Coordonnees'=>$Coordonnees
));
}
}
Поэтому я не понимаю, почему он работает с двумя из моих сущностей, а не с моей сущностью "Professionnel".Заранее спасибо за ваши ответы и извините за мой примерный английский
Kourilles