0
我目前正在向我的網站添加一個功能,提出問題並給出多選答案。Laravel-在視圖中顯示一對多關係
我的回答模式有如下代碼:
protected $table = 'answer';
protected $primaryKey = 'answer_id';
protected $fillable = ['question_id'];
public function question()
{
return $this->belongsTo('App\Question','question_id')->distinct();
}
,我的看法是這樣的:
@foreach ($answers as $answer)
<h2>{{$answer->question->question}}</h2>
<p>{{$answer->answer}}</p>
@endforeach
我的控制器:
$answers = Answer::with('question')->first()->get();
它顯示的是這樣的:
question1
答案在這裏
問題1
這裏回答2
問題1
這裏回答3
問題2
2回答這裏
問題2
2回答這裏2
問題2
2這裏3
我想只顯示一次的問題答案。我是Laravel新手。
它現在打印所有的問題,但每個都有一個答案。 問題1 這裏問題1回答 問題2 這裏問題1回答2 問題3 這裏問題1回答3 問題4 question2-回答這裏 question5 question2-回答這裏2 question6 問題2回答這裏3 這是如何設置? public function answer(){ return $ this-> hasMany('App \ Answer','answer_id'); } – Emma
在控制器中執行'dd($ questions)'並檢查數據庫結果。確保您的關係是正確的,並且您在對視圖進行故障排除之前獲得預期的結果。 – jszobody
非常感謝你!這是我的關係! :)你提供的代碼完美的作品! – Emma