https://geekslabtechnology.com/laravel-eloquent-relationships-an-advanced-guide/