yahyaoui jasser
yahyaoui jasser

Reputation: 1

Payum Bundle Symfony 2 extended_payment_data

After Payum Bundle Setup, when I do php app/console doctrine:schema:update --force I get this Exception:

C:\wamp\www\shop_@stable>php app/console doctrine:schema:update --force

[Doctrine\DBAL\DBALException]
Unknown column type "extended_payment_data" requested. Any Doctrine type that you use ha s to be registered with \Doctrine\DBAL\Types\Type::addType(). You can get a list of all
the known types with \Doctrine\DBAL\Types\Type::getTypesMap(). If this error occurs duri
ng database introspection then you might have forgot to register all database types for
a Doctrine Type. Use AbstractPlatform#registerDoctrineTypeMapping() or have your custom
types implement Type#getMappedDatabaseTypes(). If the type name is empty you might have
a problem with the cache or forgot some mapping information.

This is my composer.json content:

"require": {
    "php": ">=5.5.12",
    "symfony/symfony": "2.8.0",
    "doctrine/dbal": "2.4",
    "doctrine/orm": "2.4",
    "doctrine/doctrine-bundle": "~1.4",
    "symfony/assetic-bundle": "~2.3",
    "symfony/swiftmailer-bundle": "~2.3",
    "symfony/monolog-bundle": "~2.4",
    "sensio/distribution-bundle": "~4.0",
    "sensio/framework-extra-bundle": "^3.0.2",
    "incenteev/composer-parameter-handler": "~2.0",
    "friendsofsymfony/user-bundle": "~2.0@dev",
    "php-http/curl-client": "^1.3",
    "payum/paypal-express-checkout-nvp": "^1.2",
    "payum/payum-bundle": "^2.0"
},

Upvotes: 0

Views: 586

Answers (2)

rapaelec
rapaelec

Reputation: 1330

you must install jms like :

composer require jms/payment-core-bundle

thanks

Upvotes: 1

Maksim Kotlyar
Maksim Kotlyar

Reputation: 3947

This is not because of Payum installment but because of you removed JMSPaymentBundle. The problem comes from there, there is a doctrine type: https://github.com/schmittjoh/JMSPaymentCoreBundle/blob/master/Entity/ExtendedDataType.php. The info about this type stored inside your database, and doctrine is trying to find such type in the code but it no longer exists.

The solution: Install the jms bundle again remove tables related to it and generate migrations (so the prod updated correctly too). deploy it to prod. and only after that you can remove jms payment bundle.

Upvotes: 0

Related Questions