Получить «имя пользователя» из таблицы статей - PullRequest
0 голосов
/ 10 мая 2018

У меня есть две таблицы: «пользователи» и «статьи».Статьи имеют столбец 'user_id', который является внешним ключом, который ссылается на user_id в 'users'.

У меня есть в модели Articles эта функция, которая должна возвращать пользовательские данные:

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

И это прекрасно работает, когда я передаю свои статьи своему зрителю и вызываю его в шаблоне блейда:

@foreach($articles as $article)
    <p>{{$article->user->name}}</p>
@endforeach

Но я пытаюсь использовать подход RESTful, поэтому я скорее получаю свои данные из JS (VueJS)

axios.get('/api/articles')

, который должен запускать функцию моего контроллера:

public function index()
{
    $books =  bookpost::all();
    return $books;
}

Так что мне было интересно, есть ли способ добавить имена пользователей в массив статей JSON перед его возвратом, потому что вJS Я не смог найти способ получить имя пользователя.

1 Ответ

0 голосов
/ 11 мая 2018

Вы можете использовать «нетерпеливую загрузку» в своем запросе, чтобы помочь:

$books = bookpost::with('user')->get();

Вы даже можете загрузить вложенные отношения:

$books = bookpost::with('user.friends')->get();

Ознакомьтесь с документацией для получения дополнительной помощи .

...