Dans ce cas là faut que tu envois manuellement la liste des tags au select (là ou tu as mis null)
Salut, je suis en train de regarder la formation laravel et notamment la partie sur les relations belongsToMany.
Mon soucis est que je n'arrive pas à récupérer les tags associés (pourtant ceux ci sont présents dans la base de donnée) . J'ai regardé encore et encore la partie du code pour vérifier mais je ne pense vraiment pas faire d'erreur sur ce point :/
Voici mon code au cas où :
Post (model) :
PostsController :
9 réponses
Hello,
Si tu veux récuperer les tags lié à ton post, il faut modifier ta requète:
Normalement ça devrait marcher, je n'ai pas eu le temps de tester.
Le plus surprenant c'est que même en les récupérant manuellement, ils ne sont pas sélectionnés dans mon select :/
Pourtant lorsque je fais une die and debug j'obtiens bien les tags associés à mon article
En revanche si je place ce code dans mon select, aucun tag n'est sélectionné
Ah, si tu veux faire en sorte de pré-selectionner les tags lié à ton post, il faut faire comme ceci:
$select correspond à tous les tags disponnible.
$tags correspond aux tags de ton post
Donc:
Le troisième argument d'un select est le/les options pré-selectionné de celui-ci.
J'ai oublié de précisé que je récupère intialement les données avec la méthode Form::model($post);
Mais j'ai déjà tenté un code similaire au tien et sans succès :/
J'ai quand même testé ton codé pour être sûr, et même résultat, les tags ne sont pas sélectionnés :/
Pourtant dans tinker :
Tu peux me faire un dd() de $tags et $postTag ? stp
Oui bien sûr :
$tags :
$postTag :
Je viens de comparer avec un système qui marche de mon côté:
Dans ce cas la, "Hacking" sera pré-selectionné. Respecte la même forme pour les tableay et ça devrait aller. (joue avec les 'id', 'name' dans la fonction list)
J'ai finalement résolu mon problème. Pour que cela fonctionne il fallait rajouter la méthode toArray() à ma sélection des tags. Du coup ça marche parfaitement et la méthode avec les attributs fonctionne également :)
Merci pour ton aide en tout cas spiker :)