gpt4 book ai didi

php - Laravel 5.3 关系问题

转载 作者:太空宇宙 更新时间:2023-11-03 11:42:45 25 4
gpt4 key购买 nike

class Game extends Model
{
public function regions() {
return $this->hasMany('Region');
}
public function servers() {
return $this->hasMany('Server');
}
}

class Region extends Model
{
public function servers() {

return $this->belongsToMany('Server');
}
}

class Server extends Model
{
public function regions() {
return $this->hasMany('Region');
}
}

每个游戏都有一个服务器,每个服务器都有一个区域。我正在尝试获取所有游戏、其服务器及其区域:game=Game::with('regions', 'regions.servers')->find($id);

我得到一个错误,即:未找到基表或 View :1146 表“region_server”不存在(SQL:选择 servers。*,region_serverregion_id 作为 pivot_region_idregion_serverserver_id 作为 pivot_server_id 来自 servers inner join region_server on servers.id = region_server.server_id 其中region_server.region_id in (4, 5)

我做错了什么?谢谢!

最佳答案

你的人际关系似乎破裂了,你应该这样做:

class Game extends Model
{
public function regions() {
return $this->hasMany('Region');
}
public function servers() {
return $this->hasMany('Server');
}
}

class Region extends Model
{
public function servers() {
return $this->hasMany('Server');
}
}

class Server extends Model
{
public function region() {
return $this->belongsTo('Region');
}
}

根据以上关系,

  • 每个游戏都有很多服务器。
  • 每个服务器都属于一个区域
  • 每个区域都有很多服务器

希望对你有帮助

关于php - Laravel 5.3 关系问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40576727/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com