laravel 集合的更改不会影响

Ami*_*ali 3 php collections model laravel eloquent

我有一个用户模型,它有一个帖子集合。我想返回用户数据及其帖子的集合,但每个用户的特殊帖子除外;为此,我使用此代码:

$users=User::with('posts')->get();
foreach($users as $user){
    $user->posts=$user->posts->except($except_id);
    // $user->posts=null;// ->>> also this code does not work
}
return $users;
Run Code Online (Sandbox Code Playgroud)

但在输出中用户的帖子没有改变!

编辑:

$except_id = $user->golden_post_id;
Run Code Online (Sandbox Code Playgroud)

Ami*_*ali 6

我尝试了一些方法终于发现unset()可以解决问题。

这段代码的工作原理:

$users=User::with('posts')->get();
foreach($users as $user){
    $posts=$user->posts->except($except_id);
    unset($user->posts);
    $user->posts=$post;
}
return $users;
Run Code Online (Sandbox Code Playgroud)