Php 2域上的拉维关系

Php 2域上的拉维关系,php,laravel,eloquent,Php,Laravel,Eloquent,我有一场足球比赛,有一支主队和一支客队 我与Game.php的关系如下: public function hometeam() { return $this->hasOne(Team::class, 'id', 'home_team_id'); } public function awayteam() { return $this->hasOne(Team::class, 'id', 'away_team_id'); } 现在我想看看每个球队属于哪一场比赛 我在T

我有一场足球比赛,有一支主队和一支客队

我与Game.php的关系如下:

public function hometeam()
{
    return $this->hasOne(Team::class, 'id', 'home_team_id');
}

public function awayteam()
{
    return $this->hasOne(Team::class, 'id', 'away_team_id');
}
现在我想看看每个球队属于哪一场比赛

我在Team.php中尝试了以下操作,但返回null

客队当然也一样

我错过什么了吗


谢谢大家!

你的比赛桌上不应该有两个球队桌外键吗,一个主队,一个客队?(一对多关系)

这样,你就可以做一些像
$team->homemagames
$team->awayGames
这样的事情,你就可以得到特定球队的所有主场和客场比赛

另外,团队模型应该有2x
return$this->hasMany(Game::class)方法,而游戏模型应该有2个x
返回$this->belongsTo(团队::类)

更新:

Team.php模型

class Team extends Model 
{
     public function homeGames() 
     {
         return $this->hasMany(Game::class, 'id', 'home_team_id');
     }

     public function awayGames() 
     {
        return $this->hasMany(Game::class, 'id', 'away_team_id');
     }
}
class Game extends Model 
{
     public function homeTeam() 
     {
         return $this->belongsTo(Team::class, 'home_team_id', 'id');
     }

     public function awayTeam() 
     {
        return $this->belongsTo(Team::class, 'away_team_id', 'id');
     }
}
Game.php模型

class Team extends Model 
{
     public function homeGames() 
     {
         return $this->hasMany(Game::class, 'id', 'home_team_id');
     }

     public function awayGames() 
     {
        return $this->hasMany(Game::class, 'id', 'away_team_id');
     }
}
class Game extends Model 
{
     public function homeTeam() 
     {
         return $this->belongsTo(Team::class, 'home_team_id', 'id');
     }

     public function awayTeam() 
     {
        return $this->belongsTo(Team::class, 'away_team_id', 'id');
     }
}

你添加了虚拟数据吗?另外,团队模型应该有2x
return$this->hasMany(Game::class)方法,而游戏模型应该有2个x
返回$this->belongsTo(团队::类)啊哈,这就是解决方案!:)谢谢,如果你编辑你的答案,我会接受的。我对钥匙的顺序有点困惑。在带有hasMany的Team.php中,应该是->hasMany(Team::class,'home\u Team\u id','id')还是先是'id',然后是'home\u Team\u id',谢谢!是的,应该是这样的。我忘了提到外键了。你能把完整的代码发出去吗?所以我可以接受这个答案:)谢谢!