我有一个订单和产品多对多的关系。从数据透视表中获取laravel雄辩数
<?php
class Order extends Eloquent {
public function user()
{
return $this->belongsTo('User');
}
public function products()
{
return $this->belongsToMany('Product');
}
}
?>
<?php
class Product extends Eloquent {
public function orders()
{
return $this->belongsToMany('Order');
}
}
?>
需要获取的倍每一产品ordered.In的MySQL,该任务可以通过使用以下查询上述查询的
SELECT products.id, products.description, count(products.id)
FROM products
INNER JOIN order_product ON products.id = order_product.product_id
INNER JOIN orders ON orders.id = order_product.order_id
GROUP BY product_id
LIMIT 0 , 30
结果取得的数目如下: -
id description count(products.id)
1 Shoes 3
2 Bag 2
3 Sun glasses 2
4 Shirt 2
如何使用laravel雄辩(不使用查询生成器)来实现此任务????如何获取每个产品使用laravel雄辩的次数?
该代码工作正常,即时获得所需的结果now.Thanks为你的帮助:) :)但一个问题。访问ordersCount()时,函数getOrdersCountAttribute()会自动调用吗?这两个功能如何流入? – developer34 2014-09-22 12:18:50
heck编辑 - 添加到文档的链接,在那里你可以找到你所需要的。基本上,访问器/增变器利用魔法'__get' /'__set',让你操纵模型的属性,以适应你的需求。 created_at和其他时间戳的工作方式几乎相同。 – 2014-09-22 12:23:51
我完全忘了访问者/ mutators.Thanks的参考! :) :) – developer34 2014-09-22 12:28:11