получить данные конфигурации модуля magento в Observer - PullRequest
11 голосов
/ 09 июля 2010

Я создал модуль с наблюдателем для модуля продаж с обработчиком событий «sales_order_shipment_save_after»,

Мой модуль имеет следующие файлы

  1. Компания / MODULENAME / и т.д. / config.xml
  2. Компания / MODULENAME / и т.д. / System.Xml
  3. Компания / MODULENAME / модель / Observer.php

В полях конфигурации администратора модулей есть четыре поля Я хочу получить эти сохраненные данные в классе Observer.

с использованием $ this-> getConfigData (’password '); дает

вызов неопределенного метода

ошибка Какие-либо предложения?

Ответы [ 3 ]

38 голосов
/ 09 июля 2010

Magento использует статический метод в глобальном Mage объекте приложения для получения значений конфигурации

$config = Mage::getStoreConfig('section_name/group/field'); //value
$config = Mage::getStoreConfig('section_name/group'); //array
3 голосов
/ 17 апреля 2013

Поправка к Полностью правильный ответ Алана.

Наряду с path в качестве первого параметра, getStoreConfig также принимает storeid в качестве второго параметра (необязательно).

Что ж, это полезно, когда вы хотите получить значения для магазина.

Алан упомянул об этом в своем уроке . Я предполагаю, что он не упомянул здесь только потому, что OP не упомянул это требование в своем вопросе.

Пожалуйста, обратитесь это

0 голосов
/ 13 ноября 2013

В модуле отгрузки я могу использовать $this->getConfigDat a для полей в system.xml, но в других типах модулей иногда нет, например, расширяет Mage_Core_Model_Abstract, чем я должен использовать getStoreConfig.Таким образом, ответ заключается в том, что вам не нужно всегда использовать getStoreConfig.Но я не знаю почему ...

Ответ: getConfigData только что определен в классе отгрузки и также использует getStoreConfig.Немного сбивает с толку, что некоторые функции на самом деле определены и не нужны ...

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