您好我的laravel雄辩的问题。
这段代码(在文档中)$debtHistory = DebtHistory::with('user.firstname')->get();
似乎不起作用,因为它返回了一些Call to undefined relationship [firstname] on model [App\User].
我在这里做错了什么?任何的想法?感谢你们。 :)
注意:如果这有帮助。
我实际上有一个替代方法,但我想在一个查询中执行此操作。这段代码我帮你了解我要做的事情。
$debtHistory = DebtHistory::whereBetween('created_at',[$filterData['from'], $filterData['to']])->where('amount', '>', '0')->get();
$excelData = [];
foreach($debtHistory as $history) {
array_push($excelData, ['Name' => $history->user->firstname .' '. $history->user->lastname, 'Debt' => $history->amount, 'Date' => Carbon::parse($history->created_at)->format('Y-m-d')]);
}
我想在一个雄辩的模型查询中做那个过程可能吗?
答案 0 :(得分:2)
此错误表示User
模型未定义firstname
关系。你应该加载这样的数据:
$debtHistory = DebtHistory::with('user')->get();
并用以下内容显示:
@foreach ($debtHistory as $one)
{{ $one->user->firstname }}
@endforeach
如果user()
为belongsTo()
关系,这将有效。