W mojej aplikacji zaktualizowałem relację z one-to-many
do many-to-many
i próbuję znaleźć sposób na utrwalenie powiązanej funkcjonalności.Laravel Wymowne zapytanie Wiele do wielu, w którym
Załóżmy, że mam dwie powiązane tabele, np. psy i właściciele. Jeśli mam szereg właścicieli i próbuję uzyskać listę identyfikatorów psów dla tych właścicieli, jak mam to zrobić elokwentnie?
Podobne pytanie został poproszony tutaj: https://laracasts.com/discuss/channels/laravel/getting-many-to-many-related-data-for-an-array-of-elements
Tak, jak byłoby uzyskać modele Dog
gdzie Owner
jest w tablicy?
To samo, co $associatedDogs = Dog::whereIn('owner_id',$ListOfOwners)->get();
dla relacji One-To-Many
, ale dla Many-to-Many
.
należy wybrać opcję '' whereHas' nad with'? Jaka jest między nimi różnica w tym przypadku? Czy robi to jakąkolwiek różnicę? –
Nieważne, znalazłem wyjaśnienie tutaj: http://stackoverflow.com/a/30232227/2012740 –
@AngelinCalu tak, 'z()' nie będzie działać dla ciebie, ponieważ ładuje dane relacji. –