If you have a many-to-many relationship, and you add an extra column to the pivot table, here's how you can order by it when querying the list.
class Tournament extends Model{ public function countries() { return $this->belongsToMany(Country::class)->withPivot(['position']); }}
class TournamentsController extends Controller{ public function whatever_method() { $tournaments = Tournament::with(['countries' => function($query) { $query->orderBy('position'); }])->latest()->get(); }}
Enjoyed This Tip?
Get access to all premium tutorials, video and text courses, and exclusive Laravel resources. Join our community of 10,000+ developers.
Recent Courses on Laravel Daily
AI Agents/IDEs for Laravel: May 2026 (Claude Code, Codex, OpenCode, etc)
7 lessons
52 min
Laravel 13 Eloquent: Expert Level
41 lessons
1 h 34 min
Queues in Laravel 13
18 lessons
1 h 12 min read