Я пытаюсь внедрить метод оплаты Paypal REST на sylius, и я получил следующую ошибку:
Request GetStatus{model: ArrayObject} is not supported. Make sure the gateway supports the requests and there is an action which supports this request (The method returns true). There may be a bug, so look for a related issue on the issue tracker.
В некоторых исследованиях выясняется, что хранилище для оплаты оставшейся части PayPal неправильно настроено (см. Payum Paypal Rest config_path принятый ответ).
Поэтому я попытался изменить конфигурацию шлюза, как показано в следующем коде:
payum:
storages:
Payum\Paypal\Rest\Model\PaymentDetails:
filesystem:
storage_dir: '%kernel.root_dir%/Resources/payments'
id_property: idStorage
gateways:
paypal_rest:
factory: paypal_rest
client_id: foo
client_secret: bar
config_path: '%kernel.root_dir%/config/sdk_config.ini'
sandbox: true
Ничего не меняется, я все еще получаю ту же ошибку.
Итак, в запросе PayPal Rest GetStatus я попытался сбросить запрос, чтобы узнать, почему он не поддерживается. Запрос должен быть экземпляром GetStatusInterface (это мой случай), а $request->getModel()
должен быть экземпляром Payment, но вместо этого у меня есть ArrayObject. Вот полный дамп модели:
#model: ArrayObject {#4410 ▼
#input: null
flag::STD_PROP_LIST: false
flag::ARRAY_AS_PROPS: false
iteratorClass: "ArrayIterator"
storage: []
}
Я думаю, что мое хранилище неправильно настроено, потому что оно пустое, но я не понимаю, почему, потому что я сделал это в моем файле config.yml.
Надеюсь, у кого-то есть решение;)