Могу ли я использовать коллекции Magento для удаленной базы данных magento?

Я подключился к другой базе данных magento.

Я использую:

$write = Mage::getSingleton('core/resource')->getConnection('remote_write');
$read = Mage::getSingleton('core/resource')->getConnection('remote_read');

для подключения и $write->query("UPDATE table......etc"); для внесения изменений.

Я хочу выбрать все продукты или конкретный из удаленной базы данных. Чтобы сделать это, я должен написать сумасшедший sql-запрос, который left joins все объекты EAV catalog_product_entity, а затем

foreach($read->fetchAll($myquery) as $row) {
    /* do something */
}

чтобы получить все атрибуты продукта.

Есть ли способ получить атрибуты продукта из удаленной базы данных с помощью коллекций magento?


person Nikitas    schedule 03.12.2013    source источник
comment
У вас действительно интересная проблема, боюсь, у меня нет времени копаться, но я бы посмотрел на создание пользовательского модуля с модельным ресурсом/коллекцией и расширил Mage_Core_Model_Resource_Db_Collection_Abstract, пытаясь подключиться к удаленной базе данных. Удачи :)   -  person jzahedieh    schedule 03.12.2013


Ответы (1)


Коллекции Magento берут свои данные, используя модели ресурсов. Взгляни на

Mage_Core_Model_Resource_Db_Abstract::_getConnection($connectionName)

ресурсной модели вашей коллекции.

person cronzzz    schedule 04.12.2013