自昨晚以来,我一直在为此挠头。我在控制器上有此功能:
public function generate_documents($id)
{
$contract = Contract::find($id);
$booking_ids = $contract->booking_id;
$booking_ids = json_decode($booking_ids);
$bookings = Booking::find($booking_ids);
}
$booking_ids
返回存储在数据库中的id的json。然后,我根据ID查找预订记录。
foreach($bookings as $booking) {
$asset = Omg_asset::where('id', $booking->omg_asset)->first();
}
这是我期望得到3个结果的部分,但只有最后一个在我的视图中返回。我尝试过这种方法:
$asset = '';
foreach($bookings as $booking) {
$asset .= Omg_asset::where('id', $booking->omg_asset)->first();
}
但是,每当我尝试检索视图中的值时,它都会返回一个json,其中包含我需要的所有记录,而我无法通过索引访问它。
为更好的上下文附加屏幕截图:
顺便说一下,这是我的代码:
@foreach($bookings as $booking)
<tr>
<td>{{ $asset }}</td>
</tr>
@endforeach
这是每当我尝试在视图上执行{{ $asset['asset_name'] }}
时抛出的错误:
"Illegal string offset 'asset_name'"
我已经很长时间没有使用Laravel了,因此,非常感谢您的帮助。如果还有更好的方法,我欢迎您提出建议。
谢谢!