如何加入Magento的藏品?

use*_*224 14 collections grid join magento

我正在尝试使用产品加入自定义集合,以在管理网格小部件中显示产品名称(而不仅仅是id).到目前为止,我找不到正确的语法.

我可以通过以下方式检索带有产品名称的产品:

法师:: getModel( '目录/产品') - > getCollection() - > addAttributeToSelect( '姓名');

我可以用以下方法检索我的自定义集合:

法师:: getResourceModel( 'xyz_mymodule/model_collection');

我如何加入这两个,以便模块集合是主要集合,$ model-> getId()返回的id仍然是我的自定义集合的ID?

Bet*_*llo 28

这里有一个有效的例子:

$collection = Mage::getModel('sales/order')->getCollection();
$collection->getSelect()->join( array('order_item'=> sales_flat_order_item), 'order_item.order_id = main_table.entity_id', array('order_item.sku'));
Run Code Online (Sandbox Code Playgroud)

问候,希望它有所帮助.

  • $collection->getSelect()->join(array('product'=>'catalog_product_flat_1'), 'product.entity_id = main_table.product_fk', array('*', "product_name" => "product.name", "container_name" => "main_table.name", ) ); (2认同)
  • 硬编码表名称?似乎在使用前缀的情况下会中断。应该使用Mage :: getSingleton('core / resource')-> getTableName('sales / order')来利用任何社区/本地替代以及处理前缀。 (2认同)