我正在尝试退还订单中的物品,以此类方式付款:
$orderItems = $this->getItems();
但是$orderItems
始终为null。我尝试使用非现场网关,即现场网关,它始终为null。我在Craft的Commerce 2中使用它。
答案 0 :(得分:0)
如果有人卡在这里,我会发现自己错过的一切。
我忘记在网关中将$sendCartInfo
设置为true。所以我的网关现在是这样的:
<?php
namespace onegr\mine\Gateways;
use ...;
class Gateway extends CreditCardGateway
{
public $sendCartInfo = true;
}
protected function createGateway(): AbstractGateway
{
/** @var OmnipayGateway $gateway */
$gateway = Omnipay::create($this->getGatewayClassName());
return $gateway;
}
protected function getGatewayClassName()
{
return '\\'.OmnipayGateway::class;
}
}