我在服务中有以下代码:
public function add(array $data) : Order
{
// retrieve item data
$item = MenuItem::findOrFail($data[OrderItem::ORDER_ITEM_ITEM_ID]);
$quantity = $data[OrderItem::ORDER_ITEM_QUANTITY];
$order_no = $data[Order::ORDER_NO] ?? null;
$session_id = $data[Order::ORDER_SESSION_ID];
$order = $order_no ? Order::findOrFail($order_no) : $this->createOrder([Order::ORDER_SESSION_ID => $session_id]);
$order_item = $this->order_item->createOrderItem($order->order_no, $item, $quantity);
// update order total
$order->subtotal += $order_item->subtotal;
$order->total += $order_item->subtotal;
$order->update();
return $order;
}
运行测试时,我得到:
获取“尝试获取非对象的属性'小计'”
检索到的对象不为空,否则它将失败。但是,小计和总计都不属于对象。如果我打印对象,我会得到除这两个字段之外的其他字段。它们都在我的数组中,我在迁移中定义了一个。$fillable->default(0);
这是怎么回事?
有只小跳蛙