簡體   English   中英

Laravel一對多槽屬於和多對多(中間有pivot)

[英]Laravel One to many trough belongsto and many to many (with pivot in between)

我一直在四處尋找修復程序,但找不到。

情況:

資源連接到一個事件,多個資源可以連接到多個事件(多對多)。

許多干預一次只與一個事件相關(一對多)。

我想做什么?

我想在資源和干預之間建立聯系。 但是……當然必須考慮與事件相關的資源。 所以可能只有特定於與干預相關的事件的資源(在屏幕截圖中你可以找到我的 UML 的一部分)

簡而言之

我想將許多資源連接到我的干預,但僅限於父事件中可用的資源。

我已經嘗試過 HasManyTrough、wityhPivot 但沒有成功。 我真的很想盡可能多地使用 Laravelish,所以沒有自定義查詢,但如果沒有其他選擇,我對一切都持開放態度。

(截圖)關系順序

In Event.php model

public function eventResource ()
{
    return $this->hasMany('App\Models\EventResource','event_id','id');
}

In EventResource.php Model

public function eventDetails ()
{
    return $this->hasMany('App\Models\Resource','id','resource_id');
}

In Intervention.php Model

public function events()
{
    return $this->hasMany('App\Models\Event');
}

In your Controller 

$interventions = Intervention::has('event.eventResource.eventDetails')->with('event', 'event.eventResource', 'event.eventResource.eventDetails')->get();

如果有任何語法錯誤,請告訴我。

請試試這個,讓我知道是否有效。

暫無
暫無

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

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