簡體   English   中英

Laravel 檢查belongstomany 是否包含belongstomany

[英]Laravel check if belongstomany contains belongstomany

在我的系統中:

  • 一個潛在客戶屬於許多銷售人員
  • 經理屬於許多銷售人員

我正在嘗試通過銷售人員檢查潛在客戶是否有經理。 這是一項政策,因此我可以確保經理可以看到他們的銷售人員的線索。

像這樣的東西:

$lead->salespeople->contains($manager->salespeople)

有沒有一種收集方法可以讓我這樣做? 我也嘗試過這樣的東西,但也不起作用:

$lead->salespeople->contains('id', $manager->salespeople->pluck('id')->toArray())

編輯,我想我明白了。 這看起來正確嗎?:

$lead->salespeople->intersect($manager->salespeople)->count() > 0

最終用這個包解決了這個問題: https ://github.com/staudenmeir/eloquent-has-many-deep

這是我現在的關系方法:

public function managers()
{
    return $this->hasManyDeepFromRelations($this->salespeople(), (new User)->setAlias('salesperson')->managers());
}

暫無
暫無

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

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