douzhuan0309 2014-10-28 12:37
浏览 42
已采纳

Laravel With Wherehas

I'm using a query to get the companies that belong to a city, that belongs to an event.

$companies = Event::find($id)->city->companies;

Now in my view i'm iterating through the companies to output the persons that work there as following

@foreach($companies as $company)
    @foreach($company->persons as $person)
        ...
    @endforeach
@endforeach

The only problem is it's also showing me companies that don't have persons

So any idea how i can modify my query to show only the companies that have persons

I was thinking about WhereHas, but I can't seem to wrap myself around the logic of combining the two.

Thanks!

  • 写回答

2条回答 默认 最新

  • dongshi1188 2014-10-28 12:46
    关注

    I'm not sure if it will work but you can try with this:

    $companies = Event::find($id)->city->companies()->has('persons')->get();
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?