Bonjour à tous,
Depuis un javascript, j'envoie par la méthode post à l'aide de la méthode .ajax() en JQuery des nouvelles informations à destination d'un formulaire afin d'instancier des objets et de les enregistrer en base de données.
Mon entité Call se définit comme suit :
Ce qui m'intéresse ici c'est donc de sauvegarder un nouveau Call en base de données, mais ce Call comprend dans ses membres une company (de l'entité Company, donc)
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34 class Call { /** * @ORM\Id * @ORM\Column(type="integer") * @ORM\GeneratedValue(strategy="IDENTITY") */ private $id; /** * @ORM\Column(type="datetime") */ private $startDate; /** * @ORM\Column(type="datetime") */ private $endDate; /** * @ORM\Column(type="string", length=60) */ private $callStatus; /** * @ORM\Column(type="text") */ private $callStatusComment; /** * @ORM\ManyToOne(targetEntity="Company", inversedBy="calls") * @ORM\JoinColumn(nullable=FALSE) */ private $company;
Dans ma requête ajax, j'envoie donc les informations nécessaires afin de remplir mon formulaire CallType, ainsi que l'id de la company (company déjà présente en base de données)
Voici mon CallType :
Question : Que dois-je modifier dans mon CallType afin que si je lui passe l'id de la Company, ça fasse le lien avec la Company présente dans la BDD du même ID? En effet lorsque je laisse tel quel, j'obtiens cette exception :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12 class CallType extends AbstractType { public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('startDate', 'datetime') ->add('endDate') ->add('callStatus') ->add('callStatusComment') ->add('company') ; }
A "__toString()" method was not found on the objects of type "AppBundle\Entity\Company" passed to the choice field. To read a custom getter instead, set the option "property" to the desired property path.
Merci d'avance
Partager