It does indeed sound like a hasOneThrough
One the order model
public function owner()
{
return $this->hasOneThrough(
\App\User::class,
\App\Meal::class,
);
}
And user model
public function order()
{
return $this->hasOneThrough(\App\Order::class, \App\Meal::class);
}
```
And usage
```
$owner = App\User::whereHas('order', function (Builder $query) {
$query->where('id', 14);
})->first();