关系不工作
Relation Not working
我正在使用 Laravel 5.4 并且我有 3 tables
users
assist
asist_members
assist_members table 包含
id | assist_id | user_id
我正在尝试使用关系获取所有数据
我在辅助模型中添加了以下关系,在这个模型中我提到了 table 名称,主键并添加了以下关系
public function user(){
// return $this->belongsTo(User::class,'user_id','id');
return $this->belongsToMany(User::class,'user_id');
}
当我尝试检索时出现错误
$response=Assist::with('user')->get();
如果我打印 $response 我收到错误
SQLSTATE[42S02]: Base table or view not found: 1146 Table
链接 table 名称是根据相关型号名称的字母顺序派生的。例如:User 模型和 Assists 模型将通过 assist_user table.
但在您的情况下,您应该通过将第二个参数传递给 belongsToMany 方法来覆盖此约定:
public function user(){
return $this->belongsToMany(User::class, 'assist_members');
}
我正在使用 Laravel 5.4 并且我有 3 tables
users
assist
asist_members
assist_members table 包含
id | assist_id | user_id
我正在尝试使用关系获取所有数据 我在辅助模型中添加了以下关系,在这个模型中我提到了 table 名称,主键并添加了以下关系
public function user(){
// return $this->belongsTo(User::class,'user_id','id');
return $this->belongsToMany(User::class,'user_id');
}
当我尝试检索时出现错误
$response=Assist::with('user')->get();
如果我打印 $response 我收到错误
SQLSTATE[42S02]: Base table or view not found: 1146 Table
链接 table 名称是根据相关型号名称的字母顺序派生的。例如:User 模型和 Assists 模型将通过 assist_user table.
但在您的情况下,您应该通过将第二个参数传递给 belongsToMany 方法来覆盖此约定:
public function user(){
return $this->belongsToMany(User::class, 'assist_members');
}