首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Magento中加入的问题

在Magento中加入的问题
EN

Stack Overflow用户
提问于 2012-11-13 22:51:53
回答 1查看 993关注 0票数 2
代码语言:javascript
复制
Table 1
--------------
|reseller_id |
|1           |
|2           |
|3           |
|4           |
--------------

Table 2
-------------------------------
|reseller_id | merchandise_id |
|1           | 1              |
|1           | 3              |
|2           | 1              |
|2           | 4              |
|3           | 2              |
-------------------------------

select * from reseller_maps inner join reseller_merch on reseller_maps.reseller_id = reseller_merch.reseller_id;

在数据库方面给了我想要的东西。但是,我得到了一个

代码语言:javascript
复制
 Call to undefined method Namespace_Class_Model_Mysql4_Reseller_Collection::joinTable() 

当尝试在Magento中执行$collection->joinTable()时。

我尝试过使用getSelect和join():

代码语言:javascript
复制
        $collection = Mage::getModel('maps/reseller');
        $collection->getSelect()
            ->join( array( 'reseller_merch'=>$this->getTable('reseller_merch')), 'reseller_maps.reseller_id= reseller_merch.reseller_id', array('reseller_merch.*'));

我得到了:

代码语言:javascript
复制
 SQLSTATE[42000]: Syntax error or access violation: 1103 Incorrect table name ''

据我所知,这是直接来自wiki上的示例代码:http://www.magentocommerce.com/wiki/1_-_installation_and_configuration/using_collections_in_magento

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-14 03:36:33

假设你是一个标准集合的子类,它应该是:

代码语言:javascript
复制
$collection->getSelect()->join($this->getTable('maps/[table_entity]'), 'main_table.reseller_id= reseller_merch.reseller_id');

这是假设你的实体是这样命名的。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13362893

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档