问题标签 [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 投票
2 回答
70 浏览

laravel - Laravel 计算集合中的值

如何得到这个数据的乘法之和。

这是我的kvit

这是操作

这里是关系

这里是控制器

这是我的看法

我需要通过将每个产品的数量乘以价格来获得总金额。那就是收据的总金额 像这样(10 15 + 5 10) = 200 怎么可能呢?

0 投票
1 回答
88 浏览

php - 如何在 Laravel 5.8 中基于多对多关系查找数据

我在用户模型和钱包模型之间存在多对多关系:

Wallet.php

并且User.php

我有这三个与钱包相关的表:

wallets

user_wallet

和表user_wallet_transactions

现在我需要显示单个用户的钱包。所以在users.indexBlade 中,我添加了以下内容:

并将用户数据发送到控制器,如下所示:

但我不知道如何user_wallet在此方法中检索信息。

那么如何user_wallet在这种情况下获取数据。

我真的很感激你们关于这个的任何想法或建议......

提前致谢。

0 投票
1 回答
289 浏览

php - Laravel 5.8:未找到列:1054 多对多关系中的未知列错误

我在用户模型和钱包模型之间存在多对多关系:

Wallet.php

并且User.php

我想像这样获取单个用户的钱包列表:

但是我以某种方式收到此错误:

SQLSTATE [42S22]:找不到列:1054 '字段列表'中的未知列'user_wallet.user_usr_id'(SQL:选择. * wallets,. user_walletas user_usr_idpivot_user_usr_id.as from inner join on . = . where . = 373)user_walletwallet_idpivot_wallet_idwalletsuser_walletwalletsiduser_walletwallet_iduser_walletuser_usr_id

但是,此用户 ID 中的钱包已经存在于user_wallet表中:

在此处输入图像描述

那么这里出了什么问题?我该如何解决这个问题?

我真的很感激你们关于这个的任何想法或建议......

提前致谢。

0 投票
0 回答
31 浏览

mysql - orderBy 子类别直到存在于 laravel

我想按以下顺序订购类别。

在排序中,我想要类别数据直到子类别存在。如果一个类别有一个孩子然后显示在下面的行中并且孩子有孩子类别然后显示在下面的孩子直到类别没有孩子。如何订购。我还想要 10 行的分页。在上面的示例中,第一页的数据直到 114 级 子级。希望我的问题清楚易懂。

0 投票
1 回答
42 浏览

php - 如何在 Laravel 函数中传递变量

我想知道如何在with函数中传递变量。代码如下:

这里我们有控制器代码:

这里我们有模型代码:

你能帮我吗?

0 投票
0 回答
53 浏览

laravel - Laravel中的多对多并按关系条件选择数据

我的 Laravel 项目中有下一张表

ID 标题
1 post1
2 post2
3 post3
4 post4
5 post5

标签

ID 姓名
1 标签1
2 标签2
3 标签3
4 标签4
5 标签5

post_tag

post_id tag_id
1 1
1 2
1 3
1 5
2 2
3 2
3 3
3 5
4 2
4 3
4 4
4 5
5 3
5 4

换句话说

邮政 标签
post1 标签1 标签2 标签3 标签5
post2 标签2
post3 标签2 标签3 标签5
post4 标签2 标签3 标签4 标签5
post5 标签3 标签4

我有查询 - 类似的东西:(+tag2+tag3-tag4可以是不同的长度;+ = 包含;- = 结果除外)我如何才能仅使用之前带有“+”的标签和之前带有“-”的标签发布帖子?

使用示例表:post1(有tag2 AND tag3 AND NOT tag4) post3(有tag2 AND tag3 AND NOT tag4)

我尝试使用下一个

但它没有给我需要的结果有人可以帮我吗?

谢谢!

0 投票
0 回答
42 浏览

laravel - laravel 中 whereDoesntHave() 关系的计数

我正在尝试在我的 Laravel 8.0 应用程序中获取多对多关系的关系计数。其中有 project_id、product_group_id、product_subgroup_id 和 brand_id,所以我的表如下所示:

在我的模型品牌中,我将关系定义如下:

同样我在项目模型中定义了关系:

我正在尝试过滤没有特定品牌关系的项目列表

为此我使用过

但我的项目计数不正确

0 投票
2 回答
314 浏览

laravel - Laravel - 如何根据员工和登录用户获取公司详细信息

在我的 Laravel 8 应用程序中,我有以下模型。

公司

员工

我开始了这个,但在路上卡住了。我想根据登录的用户选择公司详细信息。公司表应该是主表:

我如何使用以下方法实现这一目标(选择公司的所有详细信息):

制作主模型

0 投票
1 回答
53 浏览

eloquent - 是否可以在 API 响应中返回不同的模型

这是我第一次在这里发帖,请原谅我的错误:

我有一个搜索功能,其路线是:

目前,我有一个雄辩的关系,产品有很多交易。是否可以执行以下操作返回单级深度数组:

  • 如果产品有有效交易,则仅返回交易;
  • 否则,退回产品本身。

这是我之前在我的 Product.php 中实现的:

交易.php

搜索控制器:

在我的 ProductResource 中:

现在,我已将 ProductResource 重构为此,但它都返回null响应

0 投票
2 回答
45 浏览

mysql - where('videos.created_at', '>', '2020.07.26 14:16:29') 不适用于左连接表 - Eloquent,Laravel

大家。我已经编写了这段代码,它应该返回在指定日期之后发布的最喜欢的视频。但是代码返回比指定日期更早的结果。我在2020.07.26之后只发布了一个视频,尽管如此,Eloquent 还是返回了 8 个较旧的视频。

在此处输入图像描述在此处输入图像描述

在此处输入图像描述

然后我在解决方案所在的 stockflow 上找到了这段代码whereColumn。但这对我没有帮助。Laravel 向我展示了另一个错误。

在此处输入图像描述

stackoverflow 上另一篇文章中的whereColumn示例

这样做的原因是我对结果进行了分组。该videos.created字段返回值的次数与视频的次数一样多。为了解决这个问题,我使用了DISTINCT

然后我添加createdDateWHERE(),不幸的是我又遇到了另一个错误。

这就是我的意思的错误。很多次我得到它......我几乎喜欢它;) 在此处输入图像描述

而且... 我编写了一个查询代码,它返回正确的结果并在本机 php 页面中运行。 这是 Laravel 应该做的,但它没有......

在此处输入图像描述

我以为我会在 Laravel 中使用自定义查询代码作为最终解决方案,但不得不再说一遍。

在此处输入图像描述

请有人帮我找到解决方案。我真的很累人。