Laravel 与数据透视表的关系

法比恩·陈

我的数据库中有 3 个表:

users (id);
interests (id);
users_interests (user_id, interests_id);

我希望能够以这种方式获取所有用户的兴趣:

$interests = $user->interests

这是我在 User.php 模型中写的内容,遵循 laravel 的文档:

public function interests() { 
    return $this->hasManyThrough(
         'App\Interest', 'App\UserInterest', 
         'user_id', 'id', 'interest_id'
    );
}

但即使用户有游戏,它也会返回空。所以一定是我做错了什么

任何人都可以帮助我吗?

ka_lin

我认为 abelongs to many可以完成这项工作:

public function interests() { 
    return $this->belongsToMany(
         'App\Interest', 
         'users_interests', 
         'user_id', 
         'interests_id'
    );
}

文档中的示例非常相似

如果您要将users_interests重命名为单数形式interest_user并将列重命名interests_id为单数形式,则只需要第一个参数:

 public function interests() { 
        return $this->belongsToMany(App\Interest::class);
    }

根据我的理解,hasManyThrough用于在关系中向前跳转(也在文档中描述):

“has-many-through”关系为通过中间关系访问远距离关系提供了便捷的捷径。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Laravel雄辩的关系和数据透视表

来自分类Dev

laravel嵌套关系数据透视表

来自分类Dev

Laravel数据透视表n:m关系

来自分类Dev

Laravel数据透视表-从逆关系表访问

来自分类Dev

Laravel从数据透视表获取数据的多对多关系

来自分类Dev

Laravel表关系透视表

来自分类Dev

Laravel 4.2多对多关系:无法从数据透视表读取

来自分类Dev

Laravel雄辩的分组与数据透视表和关系

来自分类Dev

Laravel:如何使用多个数据透视表关系

来自分类Dev

Laravel使用数据透视表进行雄辩的多对多关系

来自分类Dev

在laravel 4中存储与数据透视表的关系

来自分类Dev

Laravel Eloquent 获取与数据透视表中的值匹配的关系

来自分类Dev

Laravel 许多关系无法获得数据透视表

来自分类Dev

Laravel - 如何查询数据透视表上的关系

来自分类Dev

数据透视表没有附加 Laravel 关系

来自分类Dev

将数据插入数据库laravel 5.6 关系所属的数据透视表

来自分类Dev

Laravel在多对多关系中删除数据透视表数据

来自分类Dev

PHP-Laravel 以多对多关系从数据透视表中获取数据

来自分类Dev

数据透视表Laravel 4

来自分类Dev

laravel数据透视表独特

来自分类Dev

Laravel Eloquent - 数据透视表

来自分类Dev

如何在Laravel中为hasOne()关系指定数据透视表

来自分类常见问题

如何在laravel 8中使用不同的数据透视表播种多对多关系?

来自分类Dev

Laravel自定义数据透视表的关系和渴望加载?

来自分类Dev

将关系添加到数据透视表中的值laravel

来自分类Dev

如何在laravel 8中使用不同的数据透视表播种多对多关系?

来自分类Dev

Laravel多对多关系与数据透视表一起创建订单列表

来自分类Dev

在Laravel 4中使用数据透视表时如何分配关系?

来自分类Dev

如何通过数据透视表上的关系计数进行排序-Laravel 4 / Eloquent

Related 相关文章

  1. 1

    Laravel雄辩的关系和数据透视表

  2. 2

    laravel嵌套关系数据透视表

  3. 3

    Laravel数据透视表n:m关系

  4. 4

    Laravel数据透视表-从逆关系表访问

  5. 5

    Laravel从数据透视表获取数据的多对多关系

  6. 6

    Laravel表关系透视表

  7. 7

    Laravel 4.2多对多关系:无法从数据透视表读取

  8. 8

    Laravel雄辩的分组与数据透视表和关系

  9. 9

    Laravel:如何使用多个数据透视表关系

  10. 10

    Laravel使用数据透视表进行雄辩的多对多关系

  11. 11

    在laravel 4中存储与数据透视表的关系

  12. 12

    Laravel Eloquent 获取与数据透视表中的值匹配的关系

  13. 13

    Laravel 许多关系无法获得数据透视表

  14. 14

    Laravel - 如何查询数据透视表上的关系

  15. 15

    数据透视表没有附加 Laravel 关系

  16. 16

    将数据插入数据库laravel 5.6 关系所属的数据透视表

  17. 17

    Laravel在多对多关系中删除数据透视表数据

  18. 18

    PHP-Laravel 以多对多关系从数据透视表中获取数据

  19. 19

    数据透视表Laravel 4

  20. 20

    laravel数据透视表独特

  21. 21

    Laravel Eloquent - 数据透视表

  22. 22

    如何在Laravel中为hasOne()关系指定数据透视表

  23. 23

    如何在laravel 8中使用不同的数据透视表播种多对多关系?

  24. 24

    Laravel自定义数据透视表的关系和渴望加载?

  25. 25

    将关系添加到数据透视表中的值laravel

  26. 26

    如何在laravel 8中使用不同的数据透视表播种多对多关系?

  27. 27

    Laravel多对多关系与数据透视表一起创建订单列表

  28. 28

    在Laravel 4中使用数据透视表时如何分配关系?

  29. 29

    如何通过数据透视表上的关系计数进行排序-Laravel 4 / Eloquent

热门标签

归档