Adminコレクションウィジェットに製品名(idだけでなく)を表示するために、製品とカスタムコレクションを結合しようとしています。これまでのところ、正しい構文が見つかりません。
次の方法で、製品名の付いた製品を取得できます。
Mage :: getModel( 'catalog/product')-> getCollection()-> addAttributeToSelect( 'name');
そして、私は私のカスタムコレクションを取得することができます:
Mage :: getResourceModel( 'xyz_mymodule/model_collection');
モジュールコレクションがプライマリコレクションであり、$ model-> getId()によって返されるIDが引き続きカスタムコレクションのIDになるように、2つを結合するにはどうすればよいですか?
ここに実際の例があります:
$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'));
ごあいさつ、お役に立てば幸いです。
テーブル名に引用符を追加する必要がありました:array( 'order_item' => 'sales_flat_order_item')最後の引数は、使用する結合のタイプを指定します。
私のバージョンは次のように見えました:
$collection = Mage::getResourceModel($this->_getCollectionClass());
$collection->join(array('order'=> 'sales/order'),'order.entity_id=main_table.entity_id', array('po_number'=>'po_number', 'imi_customer_email' =>'imi_customer_email'), null,'left');
$this->setCollection($collection);`