Symfony Make: Migration: Хранилище метаданных устарело, запустите команду syn c -metadata-storage, чтобы исправить эту проблему. - PullRequest
10 голосов
/ 16 июня 2020

У меня продолжает появляться эта проблема каждый раз, когда я пытаюсь выполнить миграцию с помощью командной строки: php bin/console make:migration или даже doctrine:migration status, когда я пробую doctrine:migration:sync-metadata-storage, поскольку они говорят мне, что я все еще получаю то же сообщение об ошибке. В настоящее время я изучаю symfony и слежу за руководством, но у меня как-то возникает эта проблема Symfony 4,4 php 7,2

Ответы [ 12 ]

0 голосов
/ 23 июня 2020

Я временно решил эту проблему, изменив файл: /vendor/doctrine/dbal/lib/Doctrine/DBAL/Schema/Comparator.php

изменен метод diffColumn:

    // This is a very nasty hack to make comparator work with the legacy json_array type, which should be killed in v3
    if ($this->isALegacyJsonComparison($properties1['type'], $properties2['type'])) {
        array_shift($changedProperties);

        $changedProperties[] = 'comment';
    }

    //////////////////////////////////////////////////////////////////
    // This is my change for fix problem//////////////////////////////
    //////////////////////////////////////////////////////////////////
    if ($properties1['default'] === 'NULL') {
        $properties1['default'] = null;
    }
    if ($properties2['default'] === 'NULL') {
        $properties2['default'] = null;
    }
    /////////////////////////////////////////////////////////////////


    // Null values need to be checked additionally as they tell whether to create or drop a default value.
    // null != 0, null != false, null != '' etc. This affects platform's table alteration SQL generation.
    if (($properties1['default'] === null) !== ($properties2['default'] === null)
        || $properties1['default'] != $properties2['default']) {
        $changedProperties[] = 'default';
    }
0 голосов
/ 16 июня 2020

У меня такая же проблема, это из-за новой версии doctrine миграции 3.0

php bin/console  debug:config DoctrineMigrationsBundle 

https://symfony.com/doc/master/bundles/DoctrineMigrationsBundle/index.html

...