我在按第三个相关表对数据进行分类时遇到了问题.让我们假设我有一张简单的桌子,像贝娄.

类别表

+----+---------+
| id |  name   |
+----+---------+
|  1 |  novel  |
|  2 |  comics |
+----+---------+

然后是书桌

+----+--------------+------------------+---------+
| id |  title       |    category_id   |  price  |
+----+--------------+------------------+---------+
|  1 |  Don Quixote |     1            |   $10.  |
|  2 |  Naruto      |     2            |   $5.   | 
|  2 |  One Piece   |     2            |   $5.   |
+----+--------------+------------------+---------+

然后TRANSACTIONS表

+----+--------------+--------------+---------+
| id |     book_id  |    pcs       |  total  |
+----+--------------+--------------+---------+
|  1 |  1           |     3        |   $30.  |
|  2 |  1           |     2        |   $20.  |
|  2 |  2           |     2        |   $10.  |
|  2 |  3           |     2        |   $10.  |
+----+--------------+--------------+---------+

我想要实现的是基于类别数据对交易数据进行分类. 例如:将被归类为小说的图书的交易总付款相加. 所以根据上面的数据,我会得到50$分作为结果.

我不知道该怎么做,请给我一些参考,如何解决这个问题. 提前谢谢你

推荐答案

如果你已经写了类别、书籍和类别、交易之间的关系,你可以简单地写:

Category::first()->transactions;

对于获取所有事务的第一个类别,但您应该创建一个hasManyThree类别之间的关系,事务

Laravel相关问答推荐

如何重置laravel ui密码

如何在 Laravel 中获取特定月份的最后一个日期?

使用 fetch api 时 Laravel 控制器不存在错误

Laravel Debugbar 中的 Laravel api routes路由

Laravel 5 如何全局设置 Cache-Control HTTP 标头?

在 laravel 如何将额外的数据传递给 mutators 和 accessors

控制器中的 Laravel Auth 用户 ID

带有时间戳的 Laravel 5.1 eloquent::attach() 方法

如何在新安装时指定 Lumen(或 Laravel)版本?

如何在 Laravel 中将秒转换为天小时分钟

Laravel 随机排序

在 Laravel 容器中覆盖单例

控制器外部的 Laravel 访问请求对象

为什么 BroadCastEvent 在 Laravel 中排队?如何阻止它?

是否可以将路由参数传递给 Laravel 中的控制器构造函数?

Blade 中的条件扩展

Laravel 5 - 从控制器级别的所有请求对象中删除参数

Laravel X-CSRF-Token 与 POSTMAN 不匹配

Laravel 数据库模式中的 MediumBlob

将值插入隐藏输入 Laravel Blade