【问题标题】:how to make relation between table and array of ids from another table laravel如何在另一个表laravel中建立表和ID数组之间的关系
【发布时间】:2018-09-04 13:41:33
【问题描述】:

我有 2 张桌子、商店和产品

stores 表有一个名为products_ids的字段

在这种情况下,我通过 products_ids 字段中的 id 将商店中的产品保存为像这样的数组 [1,2,3,4,5] 我知道这样做不是一个好习惯,但情况就是这样。

我怎样才能在模型中建立一个关系来实现这样的事情

Store::with('products')->get();

谢谢

【问题讨论】:

  • 你能改变结构以更好地练习吗? IE。将 store_id 字段添加到产品而不是 store 中的 product_ids 或通过在两者之间添加表使其成为多对多关系。
  • @Teun 抱歉,但结构不可更改

标签: laravel orm laravel-eloquent laravel-query-builder


【解决方案1】:

我不知道这是否适合你,但还是试试吧:

在您的商店模型中添加以下内容:

public function products ()
{
    return Product::whereIn('id', $this->products_ids)->get();
}

【讨论】:

  • 它说了什么?
猜你喜欢
  • 2017-07-09
  • 1970-01-01
  • 1970-01-01
  • 2019-01-20
  • 1970-01-01
  • 1970-01-01
  • 2023-03-18
  • 2019-01-03
  • 1970-01-01
相关资源
最近更新 更多