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(;
我收到一个错误,即:找不到基表或视图:1146 表"region_server"不存在(SQL:选择 servers
.*,region_server
.region_id
pivot_region_id
,region_server
。server_id
pivot_server_id
从servers
内部连接region_server
servers
。id
= region_server
.server_id
region_server
的地方.region_id
英寸 (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');
}
}
根据上述关系,
- 每个游戏都有许多服务器。
- 每台服务器都属于一个区域
- 每个区域都有许多服务器
希望这有帮助