i'd do it the same with a Favourite
table. laravel covers this with its polymorphic relations.
your tables could look like
class Favourite extends Eloquent {
public function favourable()
{
return $this->morphTo();
}
}
class Team extends Eloquent {
public function favourite()
{
return $this->morphMany('Favourite', 'favourable');
}
}
...
your Favourite table would look like
Favourite
favourable_id: int
favourable_type: string
you'd call it like a normal property on the model like $player->favourable()
.