如何使用Magento的ORM在我的自定义表格和magento表格之间建立内部连接?
问题描述:
我需要在我的自定义表和Magento的实体表之一之间进行内部连接..我如何使用Magento的ORM模型来实现这一点?如何使用Magento的ORM在我的自定义表格和magento表格之间建立内部连接?
非常感谢。
答
通读官方API documentation并查看joinTable
,joinField
和joinAttribute
方法。
这里是加入相关订单收集表的例子:对于哪些已经尝试的例子及其效果
$this->_orders = Mage::getResourceModel('sales/order_collection')
->addAttributeToSelect('*')
->joinAttribute('billing_firstname', 'order_address/firstname', 'billing_address_id', null, 'left')
->joinAttribute('billing_lastname', 'order_address/lastname', 'billing_address_id', null, 'left')
->joinAttribute('billing_street', 'order_address/street', 'billing_address_id', null, 'left')
->joinAttribute('billing_company', 'order_address/company', 'billing_address_id', null, 'left')
->joinAttribute('billing_city', 'order_address/city', 'billing_address_id', null, 'left')
->joinAttribute('billing_region', 'order_address/region', 'billing_address_id', null, 'left')
->joinAttribute('billing_country', 'order_address/country_id', 'billing_address_id', null, 'left')
->joinAttribute('shipping_firstname', 'order_address/firstname', 'shipping_address_id', null, 'left')
->joinAttribute('shipping_lastname', 'order_address/lastname', 'shipping_address_id', null, 'left')
->joinAttribute('shipping_street', 'order_address/street', 'shipping_address_id', null, 'left')
->joinAttribute('shipping_company', 'order_address/company', 'shipping_address_id', null, 'left')
->joinAttribute('shipping_telephone', 'order_address/telephone', 'shipping_address_id', null, 'left')
->joinAttribute('shipping_fax', 'order_address/fax', 'shipping_address_id', null, 'left');
你也应该检讨this question。
HTH,
JD
非常感谢您的例子...三江源..! – balanv 2011-03-17 04:45:34