首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Payum -特性'Payum\Core\GatewayAwareTrait‘未找到

Payum -特性'Payum\Core\GatewayAwareTrait‘未找到
EN

Stack Overflow用户
提问于 2016-04-22 21:18:26
回答 2查看 302关注 0票数 1

当我运行php应用程序/控制台支付:网关:调试

我有一条错误信息

代码语言:javascript
复制
PHP Fatal error:  Trait 'Payum\Core\GatewayAwareTrait' not found in /var/www/myapplication/vendor/payum/paypal-express-checkout-nvp/Payum/Paypal/ExpressCheckout/Nvp/Action/PurchaseAction.php on line 26

有人能帮我弄明白怎么回事吗?

(谢谢;)

我的控制者:

我的应用程序提供了递归支付订阅。

代码语言:javascript
复制
    /**
     * @Extra\Route(
     *   "/prepare_recurring_payment_agreement",
     *   name="acme_paypal_express_checkout_prepare_recurring_payment_agreement"
     * )
     *
     * @Extra\Template
     */
    public function createAgreementAction(Request $request)
    {
        $gatewayName = 'paypal_express_checkout_recurring_payment_and_doctrine_orm';
        $subscription = $this->getWeatherForecastSubscriptionDetails($request->request->get('abo'));

        if ($request->isMethod('POST')) {
            $storage = $this->getPayum()->getStorage('MyApplication\UserBundle\Entity\AgreementDetails');
            /** @var $agreement AgreementDetails */
            $agreement = $storage->create();
            $agreement['ABO'] = $request->request->get('abo');
            $agreement['PAYMENTREQUEST_0_AMT'] = 0;
            $agreement['L_BILLINGTYPE0'] = Api::BILLINGTYPE_RECURRING_PAYMENTS;
            $agreement['L_BILLINGAGREEMENTDESCRIPTION0'] = $subscription['description'];
            $agreement['NOSHIPPING'] = 1;

            $storage->update($agreement);

            $captureToken =$this->getPayum()->getTokenFactory()->createCaptureToken(
                $gatewayName,
                $agreement,
                'acme_paypal_express_checkout_create_recurring_payment'
            );

            $agreement['RETURNURL'] = $captureToken->getTargetUrl();
            $agreement['CANCELURL'] = $captureToken->getTargetUrl();
            $agreement['INVNUM'] = $agreement->getId();

            $storage->update($agreement);
            return $this->redirect($captureToken->getTargetUrl());
        }
        return array(
            'subscription' => $subscription,
            'gatewayName' => $gatewayName
        );
    }

My composer.json :

在这里,我表示敬佩

代码语言:javascript
复制
    "php": ">=5.3.3",
    "symfony/symfony": "2.8.*",
    "payum/payum-bundle": "^2.0",
    "payum/offline": "^1.2",
    "payum/paypal-express-checkout-nvp": "^1.0",

AppKernel.php

这里我只打电话给PayumBundle

代码语言:javascript
复制
new Payum\Bundle\PayumBundle\PayumBundle(),

PHP版本:

代码语言:javascript
复制
PHP 5.5.9-1ubuntu4.16 (cli) (built: Apr 20 2016 14:31:37)
Copyright (c) 1997-2014 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
    with Zend OPcache v7.0.3, Copyright (c) 1999-2014, by Zend Technologies
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-04-25 11:44:19

我回答自己:

只需加上

代码语言:javascript
复制
"php-http/guzzle6-adapter": "^1.0" 

要解决依赖关系,请执行以下操作。

票数 0
EN

Stack Overflow用户

发布于 2016-04-28 03:15:55

您应该添加到composer.json中:

代码语言:javascript
复制
"payum/core": "^1.2",
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36803466

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档