我有一个
cart
模型,它有一个访问器方法调用 isFullAccepted()
,在检查关系状态后返回 true/false
。
在另一个访问器调用中
remaingingCarts()
我返回所有carts
,它的isFullAccepted()
是假的。
在
remaingingCarts()
访问器中是:
public function remainingCarts(){
$carts = Cart::all();
$cartIds = [];
foreach($carts as $cart){
if (!$cart->isFullAccepted()){
array_push($cartIds , $cart->id);
}
}
return Cart::findMany($cartIds);
}
这样快吗?
foreach
on all()
不会造成繁重的处理?
我想你必须尝试一下where条件。
public function remainingCarts(){
$carts = Cart::where('is_full_accepted',false)->get();
return $carts;
}
如果您获得的购物车
isFullAccepted
是错误的,请尝试此操作。