请帮助...我看不到我的错误,我是新手:
OrdersController.php:
public function show(Order $order)
{
return view('/orders.show', compact('order'));
}
Order.php:
public function TypesOfTest()
{
return $this->belongsTo(TypesOfTest::class);
}
show.blade.php:
<div class="col-12">
<p>Order for: {{ $order->patient->name . ' ' . $order->patient->fname}} </p>
<p>Test type: {{ $order->TypesOfTest->nameOfTest }}</p>
</div>
({ $order->TypesOfTest->nameOfTest }} <-- is the problem
答案 0 :(得分:1)
声明关系时,laravel允许您定义涉及到的键。如果您不这样做,则只需将后缀_id
添加到表名即可作为外键。
在您的情况下(未定义foreign_key),它将创建错误。将您的belongsTo
关系更改为此:
public function TypesOfTest()
{
return $this->belongsTo(TypesOfTest::class, 'typesOfTest_id');
}
答案 1 :(得分:0)
您在模型中的关系:
Order.php:
public function TypesOfTest()
{
return $this->belongsTo(TypesOfTest::class, 'typesOfTest_id');
}
TypesOfTest.php
public function order()
{
return $this->hasMany(Order::class);
}