Я использую Laravel 5.6, и я создал два вопроса модели и модель пользователя, и они связаны друг с другом с использованием отношения один ко многим, как:
Модель вопроса
public function user() {
return $this->belongsTo('App\User');
}
Модель пользователя
public function questions() {
return $this->hasMany('App\Question');
}
И мой код контроллера:
public function index()
{
$user = User::all();
return view('home', compact('user'));
}
Итак, я пытаюсь получить название вопроса, и я написал это код в лезвии:
@foreach($user as $user)
{{ dd($user->questions->questions_title) }}
@endforeach
Но получаю ошибку undefined index questions_title, но если только написать этот {{ dd($user->questions) }}
, это вызвало у меня все вопросы, так как это исправить.
I have also tried
{{ dd($user->questions['questions_title']) }}
but not fixed.
В вашем контроллере вы не являетесь жадная загрузка вашими отношениями questions
. Измените свой код на следующий:
public function index()
{
$user = User::with('questions')->get();
return view('home', compact('user'));
}
Использование метода with()
загрузит все указанные отношения с красноречивым запросом. После этого вам нужно будет просмотреть коллекцию questions
, используя метод сбора ->each()
.
@foreach($users as $user)
@foreach($user->question as $question)
{{ $question->question_title }}
@endforeach
@endforeach
Братан попытался, но снова получил неопределенный индекс question_title
Это называется question_title
или title
в вашей БД?
Вы захотите просмотреть свои отношения questions
, чтобы увидеть свой вопрос:
@foreach($user as $u)
@foreach($u->questions as $question)
{{ dd($question->questions_title) }}
@endforeach
@endforeach
Примечание: Поменял $user
на $u
Братан, большое спасибо, я приму это, как только смогу снова принять это, правда, спасибо ...
Нет необходимости в двух петлях foreach
, мы можем просто использовать одну, как показано ниже:
@foreach ($user->questions as $question)
{{ dd($question->questions_title) }}
@endforeach
Посмотрите код контроллера. У него есть список пользователей: $user = User::all();
$user->questions
- это сборник. Прокрутите его.