【发布时间】:2014-11-14 08:57:09
【问题描述】:
我想用 Eloquent(在 Laravel 中)提出这个请求:
$user = User::find(1);
$product = $user->products()->where('id', 1)->first();
但是列 ID 在表用户和表产品中,所以我遇到了一个错误(列不明确)。我想在代码中不设置“产品”的情况下使用它(因为表名最终可能会改变......)。
如何解决这个问题?
【问题讨论】:
-
你试过 product.id 代替 id 吗?
-
我已经编辑了我的问题:它会起作用,但我不想硬编码表名,因为它们最终会改变......
-
如果不明确你想要从哪里得到什么,你就不能真正做到,这就像你想从自己身上拿一块,但你不知道从哪里伸手
-
只是这样的想法,但这里似乎很清楚,我想检索用户 ID 为 1 的第一个产品。如果我想要 ID 为 1 的用户的第一个产品,我想我会这样写:
$user->where('id', 1)->products()->first();. -
请注意 - 这与
users表无关。您必须通过枢轴链接这些模型,对吗?顺便说一句,不确定你为什么重复你的问题?