I have a laravel collection called $users. And then I also have an array that contains last 2 posts of each user. The collection contains an id field and the array contains user_id so that it can be matched up together.
How can I push this additional data into the collection. I want it to be accessible such as $users->posts so I would be able to have $users->posts[0] and $users->posts[1] for each user provided that there was a post for that user in the original array.
This is code I have so far:
foreach ($users as $user) {
foreach ($posts as $post) {
if ($post->user_id == $user->id) {
$user->posts->push($post);
}
}
}
And that kinda sorta works, but not really because it pulls in the relations from the User model that's called posts and is a hasMany relation to the User.
$posts array:
$users collection:
And here's how the result looks like. You can see the first 4 items are actually the relation that are pulled in automatically when I call $user->posts and the next 2 are the ones I inserted. I wouldn't want to pull the first 4 in since that defeats the purpose of me inserting them manually.
from Newest questions tagged laravel-5 - Stack Overflow http://ift.tt/1mElxNY
via IFTTT
Aucun commentaire:
Enregistrer un commentaire