我一直在开发一个自定义模块,该模块具有管理员后端。到目前为止,它一直运行良好,就像客户模块一样,但现在我坚持这样做。我的自定义表保存了客户 ID,我可以在网格的每一行中显示客户名称。到目前为止,我可以出示身份证件,我知道我应该准备收藏品,但我没有头绪。如果我使用 join 它只适用于同一模块的模型。我试过这个:
$collection = Mage::getModel('mymodule/mymodel')->getCollection()->getSelect()
->join(
'customer_entity',
'main_table.customer_id = customer_entity.entity_id', array('customer_name' => 'email'));
如果我打印查询看起来像这样
SELECT `main_table`.*, `customer_entity`.`email` AS `customer_name` FROM
`uhma_comunidad_question` AS `main_table` INNER JOIN `customer_entity` ON
main_table.customer_id = customer_entity.entity_id
但没有返回任何内容,集合为空,如果我复制此 sql 并将其粘贴到 phpmyadmin 中,它工作完美,我在这里缺少什么
感谢您的帮助。
最佳答案
很简单,如果您对 getSelect() 使用链接,它不起作用,只需添加另一行
$collection = Mage::getModel('mymodule/mymodel')->getCollection();
$collection->getSelect()
->join(
'customer_entity',
'main_table.customer_id = customer_entity.entity_id', array('customer_name' => 'email'));
完美运行
关于php - Magento 集合在不同模块之间加入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3627226/