Получить пользователя без столбца электронной почты - PullRequest
0 голосов
/ 21 апреля 2020

У меня есть база данных, из которой я получаю комментарии и данные об авторе.

Я использую топор ios для загрузки асинхронных комментариев вместе с автором комментария.

Пользователь. php

public function comments() {
    return $this->hasMany('App\Comment');
}

Comment. php

public function author()
{
    return $this->belongsTo('App\User', 'user_id');
}

CommentController. php

public function fetch(Request $request)
{
    $comments = Comment::with('author')
        ->orderByDesc('id')
        ->get();
    return response($comments, 200);
}

Я хотел бы получить только comment.author. Имя и комментарий. Автор. Аватар. Есть ли другой способ, кроме сокрытия полей? Я думаю, что мне понадобятся другие поля в других методах.

Пользователь. php

/**
 * The attributes that should be hidden for arrays.
 *
 * @var array
 */
protected $hidden = [
    'email', 'password', 'remember_token',
];

1 Ответ

1 голос
/ 21 апреля 2020

Вы можете указать, какие столбцы вы выбрали при активной загрузке, например:

Comment::with(['author'=>function($query){
    $query->select('name','avatar');
}])->get();

или просто:

Comment::with('author:name,avatar')->get()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...