我有一个默认的身份验证表用户和另一个表user_profiles
user(id,email,password)
user_profiles(id,first_name,last_name,mobile)
我使用多对多关系连接这两个表 为此,我在模型类User和UserProfile
中添加了关系 // User Model
public function userProfiles()
{
return $this->belongsToMany('App\Models\UserProfile', 'user_user_profile',
'user_profile_id', 'user_id');
}
//UserProfile Model
public function users()
{
return $this->belongsToMany('App\User', 'user_user_profile',
'user_profile_id', 'user_id');
}
我尝试使用
通过用户表访问UserProfle详细信息 $user=\App\User::find(1)->userProfiles()->get();
但没有工作,也尝试了
/$user = \App\User::findOrFail(1)->with('userProfiles')->get();
这也行不通,请帮忙
答案 0 :(得分:1)
您在用户模型中定义了错误的关系:swap user_id
和user_profile_id
// User Model
public function userProfiles()
{
return $this->belongsToMany('App\Models\UserProfile', 'user_user_profile',
'user_id' , 'user_profile_id');
}