簡體   English   中英

檢索表之間的數據(Pivot Laravel 5.5)

[英]Retrieving data between tables (Pivot Laravel 5.5)

我有兩個表,類別和活動,然后在其中創建了一個樞軸表activity_categories,該表保存了activity_id和category_id。

我已經創建了可以檢索數據的模型,但是現在我想從活動表中獲取所有活動,該活動表屬於類別表中的特定類別。

我嘗試使用循環,但無法使其正常工作。 我的代碼如下:

//活動模型

public function category()
{
    return $this->belongsToMany('App\Category','activity_categories');
}

//控制器

$activities = Activity::all();

    foreach ($activities as $activity){
        $fun = Activity::all()->where($activity->category->first()->name, 'fun');
        dd($fun);
    }
    return view('layout.home', compact('activities'));

如果我嘗試dd,盡管我在此類別中有大量數據,但它返回null。 注意,一個活動可能屬於許多類別

您必須在“ Category模型中定義反向關系:

public function activity()
{
    return $this->belongsToMany('App\Activity', 'activity_categories');
}

然后像這樣使用它:

$category = Category::find($id);
$activities = $category->activity;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM