duanboshi1472 2014-04-03 14:30
浏览 36
已采纳

Laravel:检查特定列数据透视表

I have a Many-to-Many relationship where there is an addional value column on the table. How do I pick that value? So...

pivot_table
- user_id
- something_id
- value

Model User:

return $this->belongsToMany('Something', 'user_something')->withPivot('value');

Now, I would like to get the value for one user where the something id is 2.

Something like this:

$user = User::find(1);
$user->something->whereSomethingId(2)->pivot->value;
  • 写回答

1条回答 默认 最新

  • doulei6778 2014-04-03 16:01
    关注

    You may try this:

    $user->something->find(2)->pivot->value;
    

    Since something is a collection so we may use find($id) method to get an item by it's id. Also, you may use filter(callback) method to filter the collection using a loop and running the callback (passed in filter method as argument) in every loop, for example:

    $user->something->filter(function($item){
        // $item is an object from the collection
        // So, you may use: $item->pivot->value
    });
    

    You may also read this article.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 BP神经网络控制倒立摆
  • ¥20 要这个数学建模编程的代码 并且能完整允许出来结果 完整的过程和数据的结果
  • ¥15 html5+css和javascript有人可以帮吗?图片要怎么插入代码里面啊
  • ¥30 Unity接入微信SDK 无法开启摄像头
  • ¥20 有偿 写代码 要用特定的软件anaconda 里的jvpyter 用python3写
  • ¥20 cad图纸,chx-3六轴码垛机器人
  • ¥15 移动摄像头专网需要解vlan
  • ¥20 access多表提取相同字段数据并合并
  • ¥20 基于MSP430f5529的MPU6050驱动,求出欧拉角
  • ¥20 Java-Oj-桌布的计算