У меня есть две таблицы
Расположение и услуги
У меня есть отношения hasMany, в местоположении много услуг.
У меня есть поле 'sort_order' в таблице служб, и я хочу отсортировать службы по этому. Я фильтрую результаты, но мне просто нужно отсортировать их в поле 'sort_order' на таблице служб.
Модель местоположения
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Location extends Model
{
protected $table ='location';
public function sorter(){
return ($this->hasMany(Sorter::class));
}
}
Модель услуг
<?php
namespace App;
use Illuminate\Database\Eloquent\Model;
class Sorter extends Model
{
protected $table = 'sorter';
}
Контроллер
public function getSort($id){
$tenantId = $id;
$filtered = Location::with(['sorter' => function($query) use ($tenantId) {
$query->where('tenant_id', $tenantId)->orderBy('sort_order', 'asc');
}])->orderBy('sortersort_order')->get();
foreach($filtered as $dat){
foreach($dat->sorter as $d){
echo($d . '<br />');
}
}
return view('sorter')->with('data', $filtered);
}
Я хочу вернуть результаты, отсортированные по полю sort_order из таблицы служб