Illuminate \ Database \ QueryException (42000) SQLSTATE[42000]: 语法错误或访问冲突
Illuminate \ Database \ QueryException (42000) SQLSTATE[42000]: Syntax error or access violation
尝试在 FriendController 上执行以下查询
$friends = Auth::User()->friends;
这就是 User 模型上的 friends 函数
public function friends()
{
return $this->belongsToMany('App\Friend', 'friends', 'user_id', 'friend_id');
}
但是在到达路线时我收到以下错误
Illuminate \ Database \ QueryException (42000)
SQLSTATE[42000]: Syntax error or access violation: 1066 Not unique table/alias: 'friends' (SQL: select friends
.*, friends
.user_id
as pivot_user_id
, friends
.friend_id
as pivot_friend_id
from friends
inner join friends
on friends
.id
= friends
.friend_id
where friends
.user_id
= 2)
Pivot tables 应该几乎没有模型。如果您尝试将 friends
用作两个用户的枢轴 table,则该关系应引用 App\User
,而不是 App\Friend
(或表示当前 class).
public function friends()
{
return $this->belongsToMany(static::class, 'friends', 'user_id', 'friend_id');
}
您想要 return 一组用户,而不是 "friends",因为朋友不是实体,而是一种关系。
尝试在 FriendController 上执行以下查询
$friends = Auth::User()->friends;
这就是 User 模型上的 friends 函数
public function friends()
{
return $this->belongsToMany('App\Friend', 'friends', 'user_id', 'friend_id');
}
但是在到达路线时我收到以下错误
Illuminate \ Database \ QueryException (42000) SQLSTATE[42000]: Syntax error or access violation: 1066 Not unique table/alias: 'friends' (SQL: select
friends
.*,friends
.user_id
aspivot_user_id
,friends
.friend_id
aspivot_friend_id
fromfriends
inner joinfriends
onfriends
.id
=friends
.friend_id
wherefriends
.user_id
= 2)
Pivot tables 应该几乎没有模型。如果您尝试将 friends
用作两个用户的枢轴 table,则该关系应引用 App\User
,而不是 App\Friend
(或表示当前 class).
public function friends()
{
return $this->belongsToMany(static::class, 'friends', 'user_id', 'friend_id');
}
您想要 return 一组用户,而不是 "friends",因为朋友不是实体,而是一种关系。