我正在尝试将一些数据附加到视图中,并且已成功执行此操作多次。然而,我的最新页面引发了错误:
Undefined property: Illuminate\Database\Eloquent\Collection::$pay_method
在我的控制器中,我有以下查询:
$receipt = Receipt::where('invoice_id', '=', $id)->get();
$ id是一个包含发票ID的变量。
我将对象传递给视图,如下所示:
return View::make('greenfee.edit')
->with('receipt', $receipt);
在视图中 - 测试我只是在做:
{{ $receipt->pay_method }}
'pay_method'是表格中的一栏。
这会引发错误。
为了进一步测试我已经测试了$ receipt包含使用print_r的数据,并且该属性肯定存在 - 这是一个提取:
[pay_method] => card
是我期望的价值。
那么 - 我在这里错过了什么,误解了什么?
此外 - 我应该何时(或不)在查询中使用get()?
所有帮助表示赞赏 TA
答案 0 :(得分:3)
Collection基本上是一个结果数组,因此您必须使用for循环或其他东西迭代它。 但是,如果您尝试只获取一个记录/行,则应使用:
$receipt = Receipt::where('invoice_id', '=', $id)->first();