Magento: невозможно изменить правило продаж - PullRequest
0 голосов
/ 07 октября 2011

Я не могу переопределить модель правила продаж. Я хочу переопределить класс Mage_SalesRule_Model_Rule .

Вот мой код: -

<?xml version="1.0"?>
<config>
    <modules>
        <MyNamespace_MyModule>
            <version>0.1.0</version>
        </MyNamespace_MyModule>
    </modules>
    <global>
        <models>
            <salesrule>
                <rewrite>
                    <rule>MyNamespace_MyModule_Model_Rule</rule>
                </rewrite>
            </salesrule>
        </models>
    </global>
</config>

Но это не работает.

Любая помощь, пожалуйста?

1 Ответ

3 голосов
/ 09 октября 2011

Спасибо всем за помощь в отладке моей проблемы.

Проблема решена.

Я также написал код переопределения в XML-файле другого локального модуля. Тем не менее, я прокомментировал этот код и мой кеш отключен. Но я не знаю, как это было причиной проблемы. Итак, когда я удалил этот закомментированный код (из другого модуля), моя проблема была решена, и я смог переопределить модель salesrule.

Я хотел бы написать несколько советов для других, если они столкнутся с такой проблемой. Эти советы основаны на комментариях к этому вопросу.

  • Еще раз проверьте, находится ли ваш XML-фрагмент в правильном месте.
  • Проверьте, создается ли модуль (Система -> Конфигурация -> Дополнительно).
  • Проверьте другие модули, которые также могут перекрывать ту же модель. Особенно те, которые находятся в «местном», так как они имеют приоритет.
  • Проверьте, какой класс возвращается при вызове нужного класса:

    echo get_class(Mage::getModel('salesrule/rule'));

Спасибо всем за ваши комментарии.

...