1

標準テンプレートをブレードのものに置き換える方法はありますか? payum-laravel-package と klarna-checkout ゲートウェイで payum を使用しています。

AuthorizeAction のテンプレートを置き換える必要があるところまで来ました。の構成オプションを作成できることに気付きましたpayum.action.authorizeが、小枝がどのように機能するかをまったく理解しておらず、laravelとの組み合わせはまったくありません。

ビューをもう少し制御する方法はありますか? それとも AuthorizeAction 自体ですか?

のすべてのアクションKlarnaCheckoutGatewayFactoryが構成可能であることがわかったので、デフォルトから拡張する独自のアクションを作成し、AuthorizeActionpayumBuilder に新しいゲートウェイを追加するときに構成に含めてみました。しかし、次のエラーが発生したため、それは機能しないと思います。

ArrayObject.php 行 21 の LogicException: カスタム ArrayAccess インスタンスが指定されている場合、Traversable インターフェイスを実装する必要があります。これは、いくつかの php の制限によるものです。

4

1 に答える 1

0

payum.action.render_template をブレードをサポートするものに置き換える必要があります。また、テンプレートを承認するパスを上書きする必要があります。これは、ブレードが理解するものです。

<?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()
;

PS このレンダリング テンプレート アクションを laravel パッケージに追加して、デフォルトにすることができます。

于 2016-03-07T20:18:09.293 に答える