例如,
有兩個表,articles-1
和articles-2
,
它們具有相同的結構,每個表的id
爲1
。Laravel:查詢兩個`articles`表,`id`衝突
我想查詢兩個表的文章,並在一個視圖中顯示它們。
ArticlesController.php
public function index()
{
$articles1=Article1::all();
$articles2=Article2::all();
//$allArticles=; //How to merge $articles1 and $articles2?
return view('index', compact('allArticles'));
}
index.blade.php
<ul>
@foreach ($allArticles as $article)
<li><a href="articles/{{$article->id}}">{{ $article->title }}</a></li>
<li>{{ $article->updated_at}}</li>
@endforeach
</ul>
問題:
1,在ArticlesController
,如何合併$articles1
和$articles2
?
2,鑑於每個物品都有鏈接到show
頁面(詳細頁面),但它們可能有相同的id
s,我應該怎麼做?
更新:
如何寫show
方法的查詢?
ArticlesController.php
public function show($slug)
{
//query twice?
$newArticle = NewArticle::findOrFail($slug);
$oldArticle = OldArticle::findOrFail($slug);
//How to write next?
return view('show', compact('article'));
}
如果您在兩張表中都有相同的列名, e查詢生成器來獲取表記錄 –
@Sagar Gautam如何查詢兩個表?根據文檔,查詢一個表是這樣的:'$ users = DB :: table('users') - > get();'https://laravel.com/docs/5.5/queries#retrieving-results – zwl1619
如果你有相同的列,那麼你可以合併這兩個查詢,最後執行查詢來獲取數據。 –