用 blade 替换树枝模板
Replace twig templates with blade
有没有办法用 blade 替换标准模板?我在 payum-laravel-package 和 klarna-checkout 网关上使用 payum。
我已经到了需要替换 AuthorizeAction 模板的地步。我注意到我可以创建 payum.action.authorize
的配置选项,但我对 twig 的工作原理知之甚少,绝对不能结合 laravel.
有没有办法更好地控制视图?或者 AuthorizeAction 本身?
我发现 KlarnaCheckoutGatewayFactory
中的所有操作都是可配置的,所以我尝试制作一个我自己的 AuthorizeAction
扩展默认值,然后在添加新的时将其包含在配置中payumBuilder 的网关。但我想那是行不通的,因为我收到以下错误:
LogicException in ArrayObject.php line 21:
Traversable interface must be implemented in case custom ArrayAccess instance given. It is because some php limitations.
您必须将 payum.action.render_template 替换为支持 blade 的那个。此外,您还必须覆盖授权模板的路径,blade 可以理解。
<?php
/** @var Payum $payum */
$payum = (new PayumBuilder())
->addDefaultStorages()
->addGateway('aGateway', [
'factory' => 'klarna_checkout'
'payum.action.render_template' => new BladeRenderTemplateAction(/* args*/),
'payum.template.authorize' => 'path/to/blade/template',
])
->getPayum()
;
P.S。我们可以将此渲染模板操作添加到 laravel 包中并使其成为默认操作。
有没有办法用 blade 替换标准模板?我在 payum-laravel-package 和 klarna-checkout 网关上使用 payum。
我已经到了需要替换 AuthorizeAction 模板的地步。我注意到我可以创建 payum.action.authorize
的配置选项,但我对 twig 的工作原理知之甚少,绝对不能结合 laravel.
有没有办法更好地控制视图?或者 AuthorizeAction 本身?
我发现 KlarnaCheckoutGatewayFactory
中的所有操作都是可配置的,所以我尝试制作一个我自己的 AuthorizeAction
扩展默认值,然后在添加新的时将其包含在配置中payumBuilder 的网关。但我想那是行不通的,因为我收到以下错误:
LogicException in ArrayObject.php line 21: Traversable interface must be implemented in case custom ArrayAccess instance given. It is because some php limitations.
您必须将 payum.action.render_template 替换为支持 blade 的那个。此外,您还必须覆盖授权模板的路径,blade 可以理解。
<?php
/** @var Payum $payum */
$payum = (new PayumBuilder())
->addDefaultStorages()
->addGateway('aGateway', [
'factory' => 'klarna_checkout'
'payum.action.render_template' => new BladeRenderTemplateAction(/* args*/),
'payum.template.authorize' => 'path/to/blade/template',
])
->getPayum()
;
P.S。我们可以将此渲染模板操作添加到 laravel 包中并使其成为默认操作。