Laravel: makeVisible () не работает в каждом цикле () - PullRequest
1 голос
/ 07 мая 2020

В моей модели User есть метод posts(), который возвращает мне все Post. Это позволяет мне очень легко получать все сообщения в json:

return response()->json(User::find($id)->posts()->get(), 200);

Метод написан так:

public function posts()
{
  $posts= $this->hasMany('App\Post');
  return $posts;
}

Проблема в том, что я хочу makeVisible некоторые атрибуты всех моих постов. Поэтому я использую метод each() точно так:

public function posts()
{
  $posts= $this->hasMany('App\Post');

  $posts->each(
    function ($post, $key) {
      $post->makeVisible(['hiddenAttribute', ...]);
    }
  );

  return $posts;
}

Но я не вижу никаких изменений в своем ответе. Я что-то пропустил?

...