Magento переопределяет сценарии обновления SQL? - PullRequest
2 голосов
/ 14 марта 2012

Как мне переопределить сценарии обновления в magento, лежащие в папке sql?

Я знаю, как настроить новый модуль с таблицами и все. Я знаю, что установочные скрипты будут запускаться только один раз. Но я хочу знать, как переопределить или изменить что-то в таблице с существующим значением.

Я хотел выполнить SQL-запрос, чтобы я мог изменить атрибут Customer в базе данных. Например, я хочу изменить «frontend_label» в таблице «eav_attribute» для «Имя» на «Название компании».

Есть предложения?

Ответы [ 2 ]

1 голос
/ 14 марта 2012

ваше решение состоит в том, чтобы увеличить номер версии вашего расширения и создать новый скрипт обновления для вашей задачи

0 голосов
/ 14 марта 2012

Если вы только разрабатываете, вам не нужно связываться со скриптами обновления. Это хлопоты.

Запустите этот код MySQL:

DELETE FROM core_resource WHERE code = 'mymodulename_setup';

Чтобы упростить задачу, вы можете создать свой собственный метод или действие, чтобы сделать это тоже, добавив функциональность к следующему при необходимости:

public function removeMyModuleAction() {
    $sql = "DELETE FROM 'core_resource'
                  WHERE 'code' = 'mymodule_setup';";

    $connection = Mage::getSingleton('core/resource')->getConnection('core_write');

    try {
        $connection->query($sql);
    } catch (Exception $e) {
        echo $e->getMessage();
    }
}

Когда вы удалите эту строку из core_resource table, Magento снова запустит скрипт начальной установки. Не нужно возиться с обновлениями. Конечно, если вы публикуете свой модуль, потребуется скрипт обновления.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...