Trying to eager load a model and it's related model but the related model returns null even though it has related data.
Group Model is polymorphic 1:1 to either Game or Gamer.
Group Model Relationship:
public function groupable()
{
return $this->morphTo();
}
Game Model Relationship:
public function group()
{
return $this->morphOne('Group', 'groupable');
}
Gamer Model Relationship:
public function group()
{
return $this->morphOne('Group', 'groupable');
}
Query to Load Group then Game:
$group = Group::whereSubdomain($id)->first();
$game = $group->game;
Group returns the group but game returns null.
Here is a sample database entry for Groups table:
id subdomain groupable_id groupable_type
5 Starmade 10 Game
Here is a sample database entry for Games table:
id genre rating
10 7 4.5
Not sure where I am going wrong to have no game returned.
Try this. It might help.
I had that problem too earlier, maybe you have the same prob like me. Essentially what I did was to help Laravel finds what columns it needs to look up for.