分析ecmall的model中引用其他model表名称和联接查询
2009-10-11 22:40 来源:www.chinab4c.com 作者:ecshop专家
ecmall是一个非常好使用的电子商务系统。ecmal中的model对数据库的业务流程进行了优化和封装.
在ecmall中,你可以在一个model中引用某一个model的表,而且进行联合查询。看以下例子.我们将ecmall商品分类树函数演变成以下结构.
function get_list($parent_id = -1, $shown = false)
{
$conditions = "1 = 1";
$parent_id >= 0 && $conditions .= " AND gc.parent_id = '$parent_id'";
$shown && $conditions .= " AND gc.if_show = 1";
$goods =& m('goods');
$sql ="select gc.* , count(g.goods_id) total from ".$this->table." gc, ".$goods->table." g where g.cate_id = gc.cate_id and $conditions group by g.cate_id";
return $this -> db -> getAll($sql);
}
从这里你可以发现,在gcategory的model中。你可以通过new 一个goods的model对象.来引用goods里面所属的主表。从而达到该目的.最后进行联合查询.
来源:中国B4C电子商务
最近更新
常用插件
- ecshop红包修改成满多少减
我们在长期使用ecshop的时候,我们可以发现。ecshop的红包是一个非常强...
- ecshop分类树中统计商品数
最近忙于开发其他项目,在不少朋友不断要求和催促的情况下,做出了该小...
- ecshop通用红包编码
很多时候,为了结合促销,必须扩展一下ecshop的红包功能。ecshop的红包...
- ecshop降价通知登记插件
ecshop降价通知登记插件,主要是为了方便某些客户,对商品价格要求比...
- ecshop购物车功能改进[插件
ecshop购物车功能改进[插件套餐]主要是我们最近开发工作和开发项目中。...