gpt4 book ai didi

Laravel Eloquent 与归档表

转载 作者:行者123 更新时间:2023-12-04 01:55:43 25 4
gpt4 key购买 nike

我有两个具有相同架构的表。

TABLE: items, items_archive

+-------------+-------------------
| partno |qty | brand|| category |
+--------------------------------+
| | | | |
| | | | |
| | | | |
+--------+----+------+-----------+

有什么方法可以创建一个 Eloquent 模型,我可以使用它同时从两者进行查询?

Item::where('brand', 'acer') => 这将查询将执行类似 union 的操作。

最佳答案

您应该能够采用这样的方法:

$a = Item::where('brand', 'acer');
$b = ItemArchive::where('brand', 'acer');
$results = $a->union($b)->get();`

在此,我们创建了 2 个带有搜索查询的模型,但不执行它们。最后,我们将它们unionget() 结果。然后,您可以遍历 $results 数组以获取所有数据。

或者,您可以将所有这些逻辑隐藏在您的 Item 模型中:

public function retrieveAllWithArchive($brand) 
{
return $this->where('brand', $brand)->union((new ItemArchive)->where('brand', $brand))->get();
}

然后,从任何地方调用它:

$results = (new Item)->retrieveAllWithArchive($brand);

希望这对您有所帮助!

关于Laravel Eloquent 与归档表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50821533/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com