【发布时间】:2017-12-05 07:03:05
【问题描述】:
我正在处理purchaseOrder 和purchaseOrderDetails 数据库表。
我正在将数据从一个表单保存到两个表中。这是purchaseOrderrDetails 项目的附加行表。插入数据工作正常。
但是,现在我需要同时更新表 purchaseOrder 和 purchaseOrderDetails。
我正在尝试将所有purchaseOrderDetails 数据添加到我使用附加行系统的表单中。而且,我收到了这个错误:
此集合实例上不存在属性 [id]
什么应该是正确的代码,请有人帮助我?下面是我的控制器方法和编辑视图-
Purchase_OrderController.php
//purchase order update form
public function update($id){
$suppliers = Supplier::all();
$categories = Category::all();
$purchaseorder_id = $id;
$purchaseorder= Purchase_Order::where('id', '=', $purchaseorder_id)->get();
$purchaseorder_details_id = Purchase_Order_Details::pluck('purchase_order_id');
$purchaseorder_details = Purchase_Order_Details::where('purchase_order_id', '=', $id)->get();
//$purchaseorder_details = Purchase_Order_Details::with('purchaseorder')->get();
//dd($purchaseorder_details);
return view('user/purchaseorder.edit')->with(['purchaseorder' => $purchaseorder, 'purchaseorder_details' => $purchaseorder_details, 'suppliers' => $suppliers, 'categories' => $categories]);
}
edit.blade.php
<tbody>
<?php $item_row = 0; ?>
@foreach($purchaseorder_details as $pur_detail)
<tr id="item-row-{{ $item_row }}">
<td class="text-center" style="vertical-align: middle;">
<button type="button" onclick="$(\'#item-row-' + item_row + '\').remove();" title="Delete" class="btn btn-xs btn-danger"><i class="fa fa-trash"></i></button>
</td>
<td>
<input value="{{ $pur_detail->code }}" class="form-control typeahead" required="required" placeholder="Item Code" name="item[{{ $item_row }}][code]" type="text" id="item-name-{{ $item_row }}">
</td>
<td>
<input value="{{ $pur_detail->item_name }}" class="form-control" required="required" name="item[{{ $item_row }}][item_name]" type="text" id="item-name-{{ $item_row }}">
</td>
<td>
<select class="form-control" required="required" name="item[{{ $item_row }}][category]" id="item-category-{{ $item_row }}">
<option selected="selected" value="">Select Category</option>
@foreach($categories as $category)
<option value="{{ $category->id }}">{{ $category->name }}</option>
@endforeach
</select>
</td>
<td>
<input value="{{ $pur_detail->quantity }}" class="form-control text-right" required="required" name="item[{{ $item_row }}][quantity]" type="text" id="item-quantity-{{ $item_row }}">
</td>
<td>
<input value="{{ $pur_detail->uom }}" class="form-control text-right" required="required" name="item[{{ $item_row }}][uom]" type="text" id="item-uom-{{ $item_row }}">
</td>
</tr>
@endforeach
<?php $item_row++; ?>
<tr id="addItem">
<td class="text-center"><button type="button" onclick="addItem();" title="Add" class="btn btn-xs btn-primary" data-original-title="Add"><i class="fa fa-plus"></i></button></td>
<td class="text-right" colspan="5"></td>
</tr>
</tbody>
【问题讨论】:
-
旁注,我们在
foreach循环中有一个$loopvar,无需自己计算 -
能否请您添加实际错误
-
ErrorException (E_ERROR) 此集合实例上不存在属性 [id]。 (查看:E:\xampp\htdocs\printingpress\resources\views\user\purchaseorder\edit.blade.php)
-
在 collection.php - public function __get($key) { if (!in_array($key, static::$proxies)) { throw new Exception("Property [{$key}]此集合实例上不存在。"); } 返回新的 HigherOrderCollectionProxy($this, $key); }
-
错误的行号或错误上方粘贴中的哪一行会有帮助,你不觉得吗?
标签: php mysql laravel laravel-5