问题标签 [laravel-relations]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
25 浏览

php - Laravel 关系查询加载 hasMany + BelongsToMany

我需要brands在特定collection页面中获取数据,但只有超过 1 个product

这是模型之间的关系。

我能够获得所有系列中包含超过 1 种产品的品牌数据,如下所示:

现在我需要在这里添加收藏限制。

我可以从$slug特定页面获取集合。

谁能帮我如何获取特定收藏页面的品牌?

0 投票
0 回答
13 浏览

eloquent - Laravel 通过多对多关系分组

我在产品和规格之间有多对多的关系,

我需要从当前形状转换关系响应: 在此处输入图像描述

按 id 分组,例如:

关系方法:

在此处输入图像描述

资源:

在此处输入图像描述

控制器:

在此处输入图像描述

0 投票
1 回答
61 浏览

php - Laravel - Eager Loading BelongsToMany 关系

我在两个实体/表之间有一对多的关系。

在此处输入图像描述

当我想急切加载这种关系时,似乎有重复的查询在后台运行。我使用此代码急切加载我的关系:

有什么我想念的吗?

谢谢回复。

0 投票
1 回答
48 浏览

laravel - 此集合实例上不存在属性 [用户]

我正在开发一个在前端使用 React 并在后端使用 laravel 的社交应用程序。我正在尝试接收所有带有他们喜欢、用户和评论的帖子。我有这些关系:1/用户模型有很多帖子,帖子模型属于一个用户。2/ Post 模型有很多赞 3/ Post 模型有很多评论,一个评论属于一个用户。当恢复所有帖子时,我成功地获得了它的喜欢和用户信息,但对于评论,我想获得用户的评论。所以我做了 $posts->comments->user->user_name 然后,我得到了错误:Property [user] does not exist on this collection instance。但是当我试图获取评论信息时,它工作正常($posts->comments)我在 Post 模型中的评论关系:

我在评论模型中的用户关系:

当我尝试获取所有帖子时,我在 PostController 中的方法:

正如您注意到我通过资源发送数据,所以我的 PostResource 的方法:

正如我所说,一切都很好,只是对于comment_user它说:这个集合实例上不存在属性[用户],当我试图只获取评论信息时它起作用了:

请问有什么帮助吗?和thnx提前。

0 投票
0 回答
18 浏览

laravel-7 - Laravel 获取 hasMany 关系的计数

我正在使用 Laravel 7。
我有 4 个表UserProjectUserProjectProjectSite。表之间的关系如下

我试图在不运行任何循环的情况下获取属于相关用户的 ProjectSites 的计数。
到目前为止,我已经编写了一个代码,可以让我计算每个项目的 ProjectSite 数量。

这产生了我以下的输出

我想要的是得到site_count的总和

0 投票
1 回答
327 浏览

php - Laravel:使用同步或 updateOrCreate 更新父表和子表?

我有一个这样的父表:

俱乐部

ID 姓名 预算
1 兵工厂 90
2 切尔西 150
3 曼城 135
4 曼联 140
5 托特纳姆热刺 87

还有这样的子表

球员

ID club_id 姓名 位置
1 3 希腊语 LM
2 3 英镑 长宽
3 3 哈兰德 英石
4 1 迪巴拉 英石
5 1 卡塞米罗 DM
6 4 弗雷德 DM
7 2 姆巴佩 英石
8 2 冒险 长宽
9 4 瓦拉内 DM

club_id 是引用 clubs 表 id 列的外键

俱乐部模式

播放器模型

我有一个数组输入和逻辑来创建这样的俱乐部和球员:

我有一个数组输入和逻辑来更新俱乐部和球员,如下所示:

我打算通过使用 sync 和 createorupdate 方法来简化我的代码,但我不确定哪个更适合插入/更新/删除连接到俱乐部表的相关球员数据?

0 投票
1 回答
401 浏览

laravel - Laravel 渴望加载与基于父级的条件的关系

我有这个查询来列出所有用户及其对应关系。

用户有很多任务
每个任务有很多工作时间,这些工作时间可以有不同的用户

即,每个任务可以由不同的用户共享,因此他们对每个任务都有单独的工作时间。

我试过下面的代码

这里的关系tasks.worktimes还获取其他用户的工作时间(这是预期的),但我想将其限制为仅获取父用户的工作时间。任何人请帮我弄清楚我应该使用什么其他条件来实现这一目标?

楷模

用户.php

任务.php

工作时间.php

0 投票
0 回答
39 浏览

php - 我怎样才能在 laravel 上只获得第一个标签关系?

我有SaleInvoice模型,销售发票属于User模型,User模型属于另一个名为Client. 在User模型上,我使用急切加载来加载Client

问题是,当我渴望加载User模型SaleInvoice时,它也会加载Client

** 有没有办法只加载Userwith SaleInvoiceClient注意:加载也很重要User

0 投票
2 回答
108 浏览

php - 如果 id 在 Laravel 中有记录,我想获得值或零显示?

这是关于 Laravel 查询的。我想从 db 获取一些数据。我使用了下面的代码,

简化时我的问题是,如果 id no 1有记录,它应该显示该值,否则应该显示零(“0”)。因为我想将数据放入数据表中。请看图片。然后清楚地了解我的问题是什么。

预期的: 在此处输入图像描述

问题,我得到了结果 在此处输入图像描述

股票数据库

下面有我在刀片文件中的真实代码。但是使用真实代码解释起来很复杂。请帮我解决这个问题。

0 投票
1 回答
54 浏览

laravel - Laravel 各方关系

大家早上好,我真的因为与 Laravel 的实体关系问题而失去理智。我正在使用最新版本的 Laravel 8.x。我的数据模型组成如下。

缔约方表

  1. ID
  2. 派对详细信息 ID
  3. 派对类型

人员表

  1. ID
  2. 派对类型('P')
  3. 姓名

公司表

  1. ID
  2. 派对类型('C')
  3. 姓名

从示例中可以看出,“Parties”是包含所有各方(包括人员和公司)的表。连接键是双键,即“party_details_id”和“party_type”组成的对。在“Parties”表中,“party_details_id”列可以有两个相等的值,但“party_details_id”和“party_type”只能有一个值。我在 Laravel 上建立关系时遇到了巨大的困难。看了几篇文章,我遇到了这种情况:

缔约方模型

人物模型

公司模式

在测试路线中,我插入了以下代码:

我得到的是:

从答案中可以看出,“聚会”是空的。为什么?从望远镜中查看启动的查询,我看到了这一点:

我究竟做错了什么?你能帮我处理好这段关系吗?谢谢